咱們知道,在iOS中,自定義cell的方式有兩種:
一是經過xib建立
.二是經過代碼自定義cellmarkdown
這裏我說下經過代碼自定義的cell。
當咱們的應用顯示的cell比較複雜,顯示的行高都不同,好比新浪微博
這時用系統自帶的cell,就不能知足這個需求,系統自帶的cell,內部默認有三個子控件(1個UIImageView,2個顯示文本數據的),而且都是contentView的子控件,因此採起經過代碼自定義cell。字體
自定義cell的步驟:
1.新建一個繼承自UITableViewCell的類繼承
2.重寫initWithStyle:reuseIdentifier:方法
1>添加全部須要顯示的子控件(不須要設置子控件的數據和frame, 子控件要添加到contentView中)
2>進行子控件一次性的屬性設置(有些屬性只須要設置一次, 好比字體\固定的圖片)圖片
3.提供2個模型
1>數據模型: 存放文字數據\圖片數據
2>frame模型: 存放數據模型\全部子控件的frame\cell的高度it
4.cell擁有一個frame模型(不要直接擁有數據模型)微博
5.重寫frame模型屬性的setter方法: 在這個方法中設置子控件的顯示數據和frameclass
6.frame模型數據的初始化已經採起懶加載的方式(每個cell對應的frame模型數據只加載一次)新浪微博