天天看点

代码实现 UITableView与UITableViewCell

        我们常用的表格类视图就是用 UITableView与UITableViewCell,UITableViewController继承UIViewContoller,所以只要很少代码就可以显示一个视图,UITableViewController也是UIScrollView子类,所以也有上下滑动效果 ;UITableView和UITableViewCell不能储存数据,可以用来显示特定行数内的数据,而且,也并不是把所有数据都放在单元格cell视图上,而是通过单元格重用和实现UITableViewDataSource,UITableViewDelegate协议的方法形式显示出来;

1.新建工程名为SampleTable , File->New->Project ->single View Application -> next 

2.添加UITableViewDataSource,UITableViewDelegate协议

声明了一个存放数据的数组和用于显示单元格的两个对象

2.在@implementation STViewController后面添加上

@synthesize listData=_listData;

@synthesize tableView = _tableView;

@synthesize tableViewCell =_tableViewCell

viewDidLoad中实现对界面初始化工作,UITableView有两种风格,

UITableViewStylePlain    默认风格,最常见的

UITableViewStyleGrouped  圆角矩形风格

3.视图上显示单元格的内容以及一些数据都是都是属性都是依赖于协议的代理方法

UITableView每一行都有一个UITableViewCell的实例表示,它也继承UIView,也就是每一行又拥有一个子视图,如果是大型表格,这样开销就非常大,所以就有了单元格的重用;当一部分单元格滚出屏幕后,他们被放在一个可重用的单元序列之中。如果系统运行比较慢,表视图就会从序列中删除这些单元,释放空间,如果有储存空间,表视图就会重新获取这些单元,以后面使用;

表示UITableViewCell风格的常量有:

UITableViewCellStyleDefault

UITableViewCellStyleSubtile

UITableViewCellStyleValue1

UITableViewCellStyleValue2

 - (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section;

                  这个方法返回指定的 section的header view 的高度。

  - (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section;

                  这个方法返回指定的 section的footer view 的高度。

为了增加效果,所以界面显得比较丑陋,附上运行结果截图

     本文转自新风作浪 51CTO博客,原文链接:http://blog.51cto.com/duxinfeng/1208745,如需转载请自行联系原作者