1.新建一個繼承自UITableViewCell的類數組
2.重寫initWithStyle:reuseIdentifier:方法字體
(先要調用父控件的nitWithStyle:reuseIdentifier:方法)spa
添加全部須要顯示的子控件(不須要設置子控件的數據和frame, 子控件要添加到contentView中)繼承
進行子控件一次性的屬性設置(有些屬性只須要設置一次, 好比字體\固定的圖片)圖片
3.提供2個模型get
數據模型: 存放文字數據\圖片數據it
frame模型: 存放數據模型\全部子控件的frame\cell的高度io
4.cell擁有一個frame模型(不要直接擁有數據模型)方法
5.重寫cell類裏frame模型屬性的setter方法: 在這個方法中設置 子控件的顯示數據和frame數據
(爲frame模型屬性賦值時,會拿到frame模型中的值,在這時,將這些值賦給子控件)
6.重寫數據模型類裏數據模型屬性的setter方法:在這個方法中計算出模型數據對應的frame
(爲數據模型屬性賦值時,會拿到數據模型中的值,在這時,計算出模型數據對應的frame)
6.控制器中,frame模型數據 的初始化已經採起懶加載的方式(每個cell對應的frame模型數據只加載一次),即:在getter方法中加載,若是模型數據爲nil,就加載,將整個plist轉爲模型組成的數組存起來了。