iphone和Ipad开发中UITableViewController和TableView应该是用得比较多得控件。但是你是会因为写这些控件写得多了而厌烦。

所有怎么让这个控件一直能用,怎么让这个控件写起来简单。是很必须。特别是UITableViewController把dataSouce的业务逻辑集成在自己身上而让看起来扎乱无章。

1.解决UITableViewController一直能用下。

那就是自己写个基类的UITableViewController,然后其他的来继承。这样可以把相似的功能都写入基类中。

比如我创建了一个自己的基类定义了一个属性isScroll用来确定什么时候TableView可以滚动。

wKiom1Pt3eDTgWmzAAErv_Ny6uE678.jpg

然后我们可以在.m文件中写入相似的功能 ,比如没有数据的时候显示一个暂无数据或者数据加载中得图片。

TableView多出来的地方显示空白等。


wKioL1Pt3vijgBj4AAZW8xrWzP8917.jpg

然后其他的继承这个就有它相似的特性了。


2.dataSouce的内容集成在UITableViewController太挫了有没有。

所有我们要把跟数据有关的提取出来。

首先

wKioL1Pt3vbi4fsLAAFJ4ArfHXA795.jpg

很简单是不是。


我们还要定义一个block 你也可以用delegate看个人喜好这个block用来获取cell和区分各种不同的cell

wKiom1Pt3eCRfmsvAABUzcwLTkk627.jpg

然后把相应的代理方法实现一下就Ok啦

wKiom1Pt3d7jx1nVAAOjEIEohQM307.jpg

最后我们来看看是不是我们的UITableViewController是不是真的不需要写这些了。


wKiom1Pt3d7QCxDwAAToCd2OUN8257.jpg

发现没就这样end。没有一点datasource的代码哦。用block去返回cell的实现。用keys去区分cell的选择。

资源下载地址http://download.csdn.net/detail/wjszf/7762843