通过代码自定义cell(cell的高度不一致,比如微博)

1.新建一个继承自UITableViewCell的类

  

2.重写initWithStyle:reuseIdentifier:方法

(先要调用父控件的nitWithStyle:reuseIdentifier:方法)

添加所有需要显示的子控件(不需要设置子控件的数据和frame,  子控件要添加到contentView中)

进行子控件一次性的属性设置(有些属性只需要设置一次, 比如字体\固定的图片)

  

3.提供2个模型

数据模型: 存放文字数据\图片数据

frame模型: 存放数据模型\所有子控件的frame\cell的高度

 

 4.cell拥有一个frame模型(不要直接拥有数据模型)

  

5.重写cell类frame模型属性的setter方法: 在这个方法中设置 子控件的显示数据frame

(为frame模型属性赋值时,会拿到frame模型中的值,在这时,将这些值赋给子控件)

6.重写数据模型类数据模型属性的setter方法:在这个方法中计算出模型数据对应的frame

(为数据模型属性赋值时,会拿到数据模型中的值,在这时,计算出模型数据对应的frame)

 

6.控制器中,frame模型数据 的初始化已经采取懒加载的方式(每一个cell对应的frame模型数据只加载一次),即:在getter方法中加载,如果模型数据为nil,就加载,将整个plist转为模型组成的数组存起来了。

转载于:https://www.cnblogs.com/ERICSUN12/p/5356581.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值