文档章节

iso UITableViewDataSource 和 UITableViewDeleg协议中常

xiahuawuyu
 xiahuawuyu
发布于 2015/12/06 11:04
字数 401
阅读 18
收藏 0

UITableViewDataSource 协议中常用方法

1.设置右边 索引值

- ( NSArray *)sectionIndexTitlesForTableView:( UITableView *)tableView

2. 设置分组标识

- ( NSString *)tableView:( UITableView *)tableView titleForHeaderInSection:( NSInteger )section

3.

设置分组个数

- ( NSInteger )numberOfSectionsInTableView:( UITableView

*)tableView

4. 设置行数

- ( NSInteger )tableView:( UITableView *)tableView numberOfRowsInSection:( NSInteger )section

5. 创建

cell(使用重用机制,如下例)

- ( UITableViewCell *)tableView:( UITableView *)tableView cellForRowAtIndexPath:( NSIndexPath

*)indexPath

{

a.

创建重用标识符

static NSString *identifier = @"reuse”;
b. 去重用队列中根据标识符取可重用的 cell  

AddressBookCell *cell = [tableView dequeueReusableCellWithIdentifier :identifier];     

c. 判断是否获取到可重用的 cell( 最后要空间释放 )    

if (!cell) {     

cell = [[[ AddressBookCell alloc ] initWithStyle : UITableViewCellStyleDefault reuseIdentifier :identifier] autorelease ];   

}

return cell;

}

6. 设置 tableView 的每一行的编辑状态

(YES,可编辑)

- ( BOOL )tableView:( UITableView *)tableView canEditRowAtIndexPath:( NSIndexPath

*)indexPath

{

return YES

}

7.edit 按钮的点击事件 ( 当点击 edit 按钮时触发 )

- ( void )setEditing:( BOOL )editing animated:( BOOL )animated

8. 当提交编辑操作时触发

- ( void )tableView:( UITableView *)tableView commitEditingStyle:( UITableViewCellEditingStyle )editingStyle forRowAtIndexPath:( NSIndexPath *)indexPath

9. 设置 tableView 每一行是否允许移动(YES,可移动)

- ( BOOL )tableView:( UITableView *)tableView canMoveRowAtIndexPath:( NSIndexPath *)indexPath

{

return YES

}

10. 提交移动操作之后触发

- ( void )tableView:( UITableView *)tableView moveRowAtIndexPath:( NSIndexPath *)sourceIndexPath toIndexPath:( NSIndexPath *)destinationIndexPath

UITableViewDelegate协议中常用方法

1. 设置行高

- ( CGFloat )tableView:( UITableView *)tableView heightForRowAtIndexPath:( NSIndexPath *)indexPath

{

return 55;

}

2. 选中cell时触发

- ( void )tableView:( UITableView *)tableView didSelectRowAtIndexPath:( NSIndexPath *)indexPath

3. 设置 tableViewCell 的编辑样式 ( 插入 / 删除 )

- ( UITableViewCellEditingStyle )tableView:( UITableView *)tableView editingStyleForRowAtIndexPath:( NSIndexPath *)indexPath

4. 设置当点击编辑按钮时 上面显示的文字,如显示删除

- ( NSString *)tableView:( UITableView *)tableView titleForDeleteConfirmationButtonForRowAtIndexPath:( NSIndexPath *)indexPath NS_AVAILABLE_IOS ( 3 _0) {    return @" 删除 " ; }

5. 设置 cell 移动的位置

- ( NSIndexPath *)tableView:( UITableView *)tableView targetIndexPathForMoveFromRowAtIndexPath:( NSIndexPath *)sourceIndexPath toProposedIndexPath:( NSIndexPath *)proposedDestinationIndexPath



© 著作权归作者所有

共有 人打赏支持
xiahuawuyu
粉丝 100
博文 647
码字总数 713018
作品 0
浦东
技术主管
报错-Type ViewController doesnot conform to protocol

UPDATE: 2015/12/06 Updated for Xcode 7 and Swift 2. 报错内容: Type 'ViewController' does not conform to protocol 'UITableViewDataSource' 复现步骤: (1) 在ViewController 键入UIT......

王永濤
2015/11/01
0
0
IOS-UITableView的使用

在IOS开发过程中使用TableView控件时,需要在ViewControl类中添加UITableViewDelegate和UITableViewDataSource协议。其中DataSource协议要求实现两个方法tableview:numberOfRowInSection和t...

linuxhunter
2012/09/20
0
0
UITableView 基本使用[一]

1、要使用UITableView必须用当前实现两个协议<UITableViewDataSource, UITableViewDelegate> UITableViewDataSource协议实现了数据加载的方法,UITableViewDelgate协议实现了UITableView外观......

常思过
2013/08/05
0
0
iOS tableview用法

通过两种方法来实现: 一、通过动态数组NSMutableArray中的数据,来显示数据 1.新建Empty Application项目,新建ViewController,HomeViewController,在AppDelegate.m中导入该文件, 并在方法...

杭城小刘
2015/10/22
1K
0
iOS UITableView 属性及方法大全

UITableView:表视图 继承UIScrollView并遵守NSCoding协议 1 属性 2 方法: UITableViewDataSource代理方法: UITableViewDelegate代理方法: 执行顺序如下: 第一轮: 第二轮:...

魔笛GNR
2016/05/26
12
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Ubuntu18.04 显卡GF-940MX安装NVIDIA-390.77

解决办法: 下面就给大家一个正确的姿势在Ubuntu上安装Nvidia驱动: (a)首先去N卡官网下载自己显卡对应的驱动:www.geforce.cn/drivers (b)下载后好放在英文路径的目录下,怎么简单怎么来...

AI_SKI
今天
0
0
深夜胡思乱想

魔兽世界 最近魔兽世界出了新版本, 周末两天升到了满级,比之前的版本体验好很多,做任务不用抢怪了,不用组队打怪也是共享拾取的。技能简化了很多,哪个亮按哪个。 运维 服务器 产品 之间的...

Firxiao
今天
0
0
MySQL 8 在 Windows 下安装及使用

MySQL 8 带来了全新的体验,比如支持 NoSQL、JSON 等,拥有比 MySQL 5.7 两倍以上的性能提升。本文讲解如何在 Windows 下安装 MySQL 8,以及基本的 MySQL 用法。 下载 下载地址 https://dev....

waylau
今天
0
0
微信第三方平台 access_token is invalid or not latest

微信第三方开发平台code换session_key说的特别容易,但是我一使用就带来无穷无尽的烦恼,搞了一整天也无济于事. 现在记录一下解决问题的过程,方便后来人参考. 我遇到的这个问题搜索了整个网络也...

自由的开源
今天
2
0
openJDK之sun.misc.Unsafe类CAS底层实现

注:这篇文章参考了https://www.cnblogs.com/snowater/p/8303698.html 1.sun.misc.Unsafe中CAS方法 在sun.misc.Unsafe中CAS方法如下: compareAndSwapObject(java.lang.Object arg0, long a......

汉斯-冯-拉特
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部