iOS 中快速简单高效的实现自定义tableViewCell 的方法-亲测实战版本-精华版

ios7 新升级之后界面有了很大的变化,xcode模拟器去掉了手机边框和home键,如果想回到主页面,可以按住shift+comment+r键。废话少说先展示一下新UI下UItableView设置为Group后的效果:

整体界面显得更加简洁,而且UITableViewCell的宽度默认为满屛,也取消了圆角。

下面说下自定义UITableView的过程:

首先在storyboard中给cell拖过来一个UIimageView和两个label

然后新建一个MyCell类继承自UITableViewCell。

MyCell代码:

#import <UIKit/UIKit.h>  

@interface MyCell : UITableViewCell
@property (weak, nonatomic) IBOutlet UIImageView *myImageView;
@property (weak, nonatomic) IBOutlet UILabel *nameLabel;
@property (weak, nonatomic) IBOutlet UILabel *timeLabel;  

@end  
#import "MyCell.h"  

@implementation MyCell  

- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
    self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
    if (self) {
        // Initialization code
    }
    return self;
}  

- (void)setSelected:(BOOL)selected animated:(BOOL)animated
{
    [super setSelected:selected animated:animated];  

    // Configure the view for the selected state
}
#pragma mark 设置Cell的边框宽度
- (void)setFrame:(CGRect)frame {
    frame.origin.x += 10;
    frame.size.width -= 22 * 10;
    [super setFrame:frame];
}  

@end  

使用:

在UITableViewController中使用,代码如下:

#import "RootViewController.h"
#import "MyCell.h"
@interface RootViewController ()  

@end  

@implementation RootViewController  

- (id)initWithStyle:(UITableViewStyle)style
{
    self = [super initWithStyle:style];
    if (self) {
        // Custom initialization
    }
    return self;
}  

- (void)viewDidLoad
{
    [super viewDidLoad];  

}  

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}  

#pragma mark - Table view data source  

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
    return 2;
}  

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    return 3;
}  

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";
    MyCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];  

    if (cell==nil) {
        cell=[[MyCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
    }  

    cell.nameLabel.text=@"WildCat";
    cell.timeLabel.text=@"2013-11-7";
    return cell;
}  

-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{  

    return  75.f;
}  

@end  

修改后的效果:

当然如果你喜欢cell满屏的效果,你完全可以不设cell的宽度。。。

时间: 2024-11-05 11:49:13

iOS 中快速简单高效的实现自定义tableViewCell 的方法-亲测实战版本-精华版的相关文章

iOS中 超简单抽屉效果(MMDrawerController)的实现

ios开发中,展示类应用通常要用到抽屉效果,由于项目需要,本人找到一个demo,缩减掉一些不常用的功能,整理出一个较短的实例. 首先需要给工程添加第三方类库 MMDrawerController: 这里讲的实例只加入了左滑抽屉.右滑和左滑只是初始化时多添加一个右视图控制器,其他方法基本相同. 下面是用手势实现抽屉的拉出和收回 1.初始化跟视图控制器时,在AppDelegate中导入头文件 #import "MMDrawerController.h" 2.初始化方法先初始化左视图和中心视

iOS中 快速正确的安装 CocoaPods

第一部分: CocoaPods 的安装 步骤1 - 安装 RVM RVM 是干什么的这里就不解释了,后面你将会慢慢搞明白. $ curl -L https://get.rvm.io | bash -s stable 期间可能会问你sudo管理员密码,以及自动通过homebrew安装依赖包,等待一段时间后就可以成功安装好 RVM. 然后,载入 RVM 环境 $ source ~/.rvm/scripts/rvm 很快,不显示任何变化 检查一下是否安装正确 $ rvm -v rvm 1.26.11

IOS中使用.xib文件封装一个自定义View

1.新建一个继承UIView的自定义view,假设类名叫做 MyAppVew #import <UIKit/UIKit.h> @class MyApp; @interface MyAppView : UIView @property(strong,nonatomic) MyApp*app; +(instancetype)appView; @end MyAppView.h #import "MyAppView.h" #import "MyApp.h" @i

IOS中快速集成短信SDK验证开发(SMSSDK),IOS开发中如何设置手机验证码

[转载请注明出处] sdk是别人的,我只是下载来集成一下. smssdk下载网站:http://www.mob.com/(也有其他很多网站有类似SDK,譬如https://www.juhe.cn/等等,可以自行百度,我在这里就演示一下MOB官网的) 此网站号称smssdk免费,可是进去一看........ 每天免费20条,上限登记了才永久免费.不多说了,开始...... 官网集成文档http://wiki.mob.com/ [1~3步]我就截图官方文档了,傻瓜式操作 [4.1]:先看官网说明:

关于iOS中TableVIew(列表)的自定义创建和自定义的Cell

最近研究了一些HTML5的基础,一些C++的基础,有些冷落了我的iOS技术,以至于最近对于iOS有种没有信心的感觉,所以今天开始回归我的iOS核心技术,眼前表现为回顾iOS技术,以博客的形式,写总结,好吧,废话不多说 纯代码形式创建:1.创建tableView 2.定义一个自定义Cell 3.设置代理 4.代理方法的我实现 tableView的创建主要有以下步骤: 1.创建tableView - (void)createTableView{ //初始化tableView并定义位置,大小.   

IOS中一个简单的粒子效果实现

1.效果图展示 2.实现思路 1> 首先要实现上面的效果,第一步要处理的就是一个简单的画板,在View上面用鼠标滑动的时候画出线条,这个功能可使用UIBezierPath实现 2> 关于粒子效果的实现,可以创建一个CALayer,然后用CAReplicatorLayer进行复制layer,从而达到粒子效果 3.代码实现 DrawView类的封装与编写 // // DrawView.m // 06-粒子效果 // // Created by xiaomage on 15/6/24. // Cop

快速简单高效的搭建 SolrCloud 集群

转https://segmentfault.com/a/1190000008634902 集群配置 集群中的每台机器都要按照以下说明进行配置启动 首先到 solr 安装目录的 bin 下,编辑 solr.in.sh 文件搜索 SOLR_HOST, 取消注释, 设置成自己的 ip搜索 SOLR_TIMEZONE, 取消注释, 设置成 UTC+8 SOLR_HOST="10.4.81.19" SOLR_TIMEZONE="UTC+8" 注意:SOLR_HOST 如果不是

iOS中防止两个按钮同时点击的方法

在iOS开发中通常会遇到,两个靠的很近的按钮,一不小心两个按钮同时点击了. 神奇的bug就产生了,如果两个按钮事件都是跳转页面的话,就会出现连跳两个页面的情况. 通常解决此问题的方法是:定义一个BaseViewController. 设置一个方法setExclusiveTouchForButtons:(UIView *)myView -(void)setExclusiveTouchForButtons:(UIView *)myView { for (UIView * v in [myView s

iOS中监控软键盘显示或隐藏的可靠方法

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 如果你试图在软键盘的显示或隐藏时去改变的UI界面结构,仅有的方法是你可以依赖使用键盘的通知消息. UITextField代理消息只会在文本区域开始被编辑时发出,而不管屏幕上是否有软件盘显示. 记住,用户可以使用蓝牙键盘连接iOS设备,并且使用它去编辑文本区域或任何其他你App中可输入控件的内容. 在使用蓝牙键盘的情况下,并没有软键盘会显示在屏幕上--如果你在文