iOS UITableView Tips(2)

#TableView Tips(2) (本来想一章就结束TableView Tips,但是发现自己还是太天真了~too young,too simple)

##架构上的优化 在Tips(1)中指出了一些常用的优化技巧,但是在整体架构上却没怎么提及,那么这次就说说怎么好好在架构上相对优化.

ViewController几乎是处理任何界面逻辑的容器。但你呈献给用户的TableView中存在多种多样的Cell时,会使ViewController十分的复杂,但是我们可以通过一些方法降低耦合度.

###Model与Cell的结合 这是目前一种最广为人们使用的方式,在Cell中对Model数据写一个setter方法,可以直接减少Controller中的dataSource方法中的耦合度,易分离.

@property (nonatomic, strong) xxModel *model;
- (void)setModel:(xxModel *)model大专栏  iOS UITableView Tips(2)pan>;

我们在上边这个setter方法中处理我们的业务逻辑.

###Request与Model的结合 可以通过建立两个interface,一个是request部分,另一个是model部分,直接在请求部分转换成model,并针对业务逻辑写一些方法,在Controller层中用request的对象去调用.

###Cell与Category 通过对UITableViewCell进行Category,可以减少Cell与model,cell与TableView之间的耦合度达到分离的效果。

###创建新的DataSource 通过创建一个NSObject文件,并且遵守UITableViewDataSource,使大部分的DataSource方法可以在该文件中时间。在你需要UITableView的界面中声明该自定义DataSource实例.

@property (nonatomic, strong) customDataSource * dataSource;
self.tableView.dataSource = self.dataSource;

iOS UITableView Tips(2)

上一篇:vue 3.0 项目搭建移动端 (二) Vue-router: router-link 与 router-view keep-alive


下一篇:Android学习笔记_75_Andorid控件样式汇总