一、一个简单的英雄展示程序
njhero.h文件代码(字典转模型)


njviewcontroller.m文件代码


实现效果:
代码注意点:
(1)在字典转模型的代码处用下面的代码,为可变数组分配dictarray.count个存储空间,可以提高程序的性能
nsmutablearray *models = [nsmutablearrayarraywithcapacity:dictarray.count];
(2)设置cell的高度
有三种办法可以设置cell的高度
1) 可以在初始加载方法中设置,self.tableview.rowheight = 60;这适用于当每一行的cell高度一致的时候,使用属性设置cell的高度。
2)在storyboard中设置,适用于高度一致
3)当每一行的cell的高度不一致的时候就使用代理方法设置cell的高度
- (cgfloat)tableview:(uitableview *)tableview heightforrowatindexpath:(nsindexpath *)indexpath
{
if (1 == indexpath.row) {
return 180;
}
return 44;
二、cell的一些属性
代码示例:


cell的一些属性:
(1)设置cell的辅助视图,设置cell.accessoryview(系统提供了枚举型,也可以自定义@父类指针指向子类对象);
(2)设置cell的背景颜色,有两种方式可以设置cell的背景颜色:
通过backgroundcolor 和 backgroundview都可以设置cell的背景。但是backgroundview 的优先级比 backgroundcolor的高,所以如果同时设置了backgroundcolor和backgroundview, 那么backgroundview会盖住backgroundcolor
示例:cell.backgroundcolor = [uicolorbluecolor];
(3)设置cell默认状态的背景
示例1:
uiview *view = [[uiview alloc] init];
view.backgroundcolor = [uicolor bluecolor];
cell.backgroundview = view;
示例2:
uiimageview *iv = [[uiimageviewalloc] initwithimage:[uiimageimagenamed:@"buttondelete"]];
cell.backgroundview = iv;(父类指针指向子类对象,可以使用图片用简单的操作设置绚丽的效果)
(4)设置cell选中状态的背景
示例:
uiview *view2 = [[uiview alloc] init];
view2.backgroundcolor = [uicolorpurplecolor];
cell.selectedbackgroundview = view2;
三、tableview的一些属性


tableview的一些属性:
(1)设置分割样式(tableview.separatorstyle),这是个枚举类型
(2)设置分割线的颜色,可以直接使用系统给出的颜色,如果系统给定的颜色不能满足需求时,也可以自定义。
补充:颜色分为24位和32位的,如下
24bit颜色
r 8bit 0 ~ 255
g 8bit 0 ~ 255
b 8bit 0 ~ 255
32bit颜色
a 8bit 0 ~ 255(tou)
r 8bit
g 8bit
b 8bit
#ff ff ff 白色
#00 00 00 黑色
#ff 00 00 红色
#255 00 00
设置为自定义颜色的实例:tableview.separatorcolor = [uicolorcolorwithred:0/255.0green:255/255.0blue:0/255.0alpha:255/255.0];
//接收的参数是颜色的比例值
(3)设置顶部和底部视图
tableview.tableheaderview //顶部
tableview.tablefooterview //底部