IOS中UITableViewCell生成方式

方案1:
根据工程需要,为每种类型的TableviewCell定义一个子类,在子类中完成布局等工作。

方案2:
在通过对方案1的实践中发现由此产生了大量的子类,而且由于部分子类采用NSLayout进行布局,难以复用。
因此,有了方案2:创建一个工厂类,通过工厂类根据类型,生成需要的Cell,这个就分隔了Cell的用户以及Cell的生成过程。
这是第一步,第二步,根据观察,大部分TableViewCell无非多几个Label或多几个ImageView,因此可以创建一个基类,
此基类采用懒加载的方式添加Label或者ImageView,在工厂类中对这些试图进行布局,进行设置。
如:
UITableViewCell:
- (UILabel*)labelInIndex:(NSInteger)indx; // 此方法通过懒加载的方式加载label。
- (void)setNormalText:(id)normalText selectText:(id)selectText forLabelAtIndex:(NSInterger)index; // 设置其正常与选中时的状态。
UITableViewCellFactory:
 用于根据Type生成TableviewCell。
以此为思路,可以处理Button等UI视图。

                                                                                                                                  2018-06-14号

猜你喜欢

转载自blog.csdn.net/u014222687/article/details/81153666
今日推荐