iOS自定义单元格之xib文件.png记录一个菜鸟的iOS学习之旅,如能帮助正在学习的你,亦枫不胜荣幸;如路过的大神如指教几句,亦枫感激涕淋!
在亦枫的《iOS学习之旅》上一篇文章 —— iOS自定义单元格之故事板方式中,我们通过故事板的方式,实现了自定义单元格创建一个简单的表视图。本文我们来学习另一种方式——xib文件。
我们还是第一篇文章中创建的简单表视图Demo为例,右击工程目录,选择New File,使用 User Interface
下面的Empty模板创建一个xib文件:
next创建名为CustomCell的xib文件,然后设计单元格样式。拖拽一个图片控件和文本控件,在属性检测器中设置宽高等控件属性,如图所示:
设计单元格样式.pngNew File,通过Source里面的Cocoa Touch Class模板创建自定义单元格类的头文件 CustomCell.h
和实现文件 CustomCell.m
:
然后为xib文件和头文件创建连接和添加控件的输出口。创建方式就不再重复复述了,记得设置xib文件的class类和单元格的重用标识符(比如设置为:CustomCell,在代码中创建单元格对象时需要使用)。
最后在 ViewController.m
文件的 tableView: cellForRowAtPathIndex:
编写创建单元格对象的代码,如下所示:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
static NSString *identifierString = @"CustomCell";
CustomCell *cell = [tableView dequeueReusableCellWithIdentifier:identifierString];
if (cell==nil) {
NSArray *nib = [[NSBundle mainBundle] loadNibNamed:identifierString owner:self options:nil];
cell = [nib objectAtIndex:0];
}
NSInteger rowIndex = [indexPath row];
NSDictionary *cellDictionary = [self.simpleData objectAtIndex:rowIndex];
cell.titleLabelView.text = [cellDictionary objectForKey:@"name"];
cell.coverImageView.image = [UIImage imageNamed:[cellDictionary objectForKey:@"cover"]];
cell.accessoryType = UITableViewCellAccessoryDetailDisclosureButton;
return cell;
}
这样,我们就完成了使用xib文件自定义单元格创建表视图的全过程,运行结果如图所示:
效果图.png
网友评论