iOS tableView 控件用法 [0] UITableView的基本用法
2012-11-05 11:09
447 查看
在iPhone或者iPad开发过程中,最重要的可能就是TableView的使用了,不管你是什么应用,只要涉及到信息展示,都要用到UITableView这个控件。
我就简单的介绍一下UITableView这个控件的使用方法吧。
因为使用IB截图比较麻烦,我下面基本上使用代码来创造控件,而不展示使用IB创造空间的方法,要是有疑问的朋友,可以联系我。
首先我们要介绍的是如何创建一个UITableView。
使用以上方法可以创建一个Plain类型的UITableView。各行代码的功能见注释。
UITableViewDataSource主要是用来处理TableView的数据源,包括确定TableView有多少个Section,每个Section有多少个Cell,确定每个Cell的对象,确定Section的HeaderView和FooterView,确定Cell的数目和位置是否可以编辑等功能。
UITableViewDelegate则会处理每一个Cell显示的问题,类似cell出现前,出现后,每一个cell的高度是多少,cell的访问方式,等等问题。
如果想实现Table最基本的功能,那就只要实现UITableViewDataSource必须的两个代理方法就可以了。当然我们还要给他设定一个数据源。
这个数据源一般情况下,是一个数组,但是也可以用别的集合来做,甚至可以不用集合,直接写明数量,然后在设置Cell的方法里面再指定数据。(这种做法常见于设置页面,每个Cell显示的内容和功能都有区别。)
以下是两个代理方法的实现。
相关苹果官方例程参见:TableViewSuite
我就简单的介绍一下UITableView这个控件的使用方法吧。
因为使用IB截图比较麻烦,我下面基本上使用代码来创造控件,而不展示使用IB创造空间的方法,要是有疑问的朋友,可以联系我。
首先我们要介绍的是如何创建一个UITableView。
self.myTableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, 320, 416) style:UITableViewStylePlain]; self.myTableView.dataSource = self; // 指定TableView的数据源,用以接收UITableViewDataSource的代理方法 self.myTableView.delegate = self; // 指定TableView的代理,用以接收UITableViewDelegate的代理方法 [self.view addSubview: self.myTableView]; // 将TableView放入controller的View容器内
使用以上方法可以创建一个Plain类型的UITableView。各行代码的功能见注释。
UITableViewDataSource主要是用来处理TableView的数据源,包括确定TableView有多少个Section,每个Section有多少个Cell,确定每个Cell的对象,确定Section的HeaderView和FooterView,确定Cell的数目和位置是否可以编辑等功能。
UITableViewDelegate则会处理每一个Cell显示的问题,类似cell出现前,出现后,每一个cell的高度是多少,cell的访问方式,等等问题。
如果想实现Table最基本的功能,那就只要实现UITableViewDataSource必须的两个代理方法就可以了。当然我们还要给他设定一个数据源。
这个数据源一般情况下,是一个数组,但是也可以用别的集合来做,甚至可以不用集合,直接写明数量,然后在设置Cell的方法里面再指定数据。(这种做法常见于设置页面,每个Cell显示的内容和功能都有区别。)
以下是两个代理方法的实现。
/** @brief 确定每个Section有几个Cell,当不实现numberOfSectionsInTableView:方法时,默认有一个Section。 @param tableView 发起动作的TableView,有时候一个代理会处理多个Table,一般通过设置tag分辨 @param section 该方法确定的是哪一个Section的Cell @returns 返回确定的Section的Cell数量 */ - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { return [self.dataArray count]; }
/** @brief tableView 加载cell的时候会调用这个代理方法,获取到合适的Cell,在这个方法里面可以设置cell的各种属性。 @param tableView 发起动作的TableView,有时候一个代理会处理多个Table,一般通过设置tag分辨 @param indexPath 要返回Cell的Section和行数 @returns 返回一个由我们自定义的Cell,下面的代码实现中,这个Cell,仅是修改了内容而已 */ - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *CellIdentifier = @"Cell"; UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; // Configure the cell... if (cell == nil) { cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier]; } cell.textLabel.text = [self.dataArray objectAtIndex:indexPath.row]; return cell; }
相关苹果官方例程参见:TableViewSuite
相关文章推荐
- iOS tableView 控件用法 [1] UITableCell的基本用法
- iOS开发 - UITableview的基本用法
- IOS学习:基本控件(UITableView)
- IOS第七天(1:UiTableView 的基本用法)
- iOS开发中UITableview控件的基本使用及性能优化方法
- iOS开发UI篇—UITableview控件基本使用
- iOS开发UI篇—UITableview控件基本使用
- iOS开发UI篇—UITableview控件基本使用
- iOS开发之有趣的UI—— UITableView控件基本使用
- iOS之tableView基本用法
- ios基本控件之UITableView
- iOS开发UI篇—UITableview控件基本使用
- iOS开发UI篇—UITableview控件基本使用
- (温故而知新)iOS开发UI篇—UITableview控件基本使用
- iOS开发UI篇—UITableview控件基本使用
- iOS开发UI篇—UITableview控件基本使
- IOS控件UIScrollView详解(基本方法、属性和delegate用法)
- iOS开发UI篇—UITableview控件基本使用
- iOS开发UI篇—UITableview控件基本使用
- iOS tableView 控件用法 [转]