UITableView高级

编辑表格

UITableView有一个editing属性来判断表格是否处于编辑状态,如果该表格控件处于编辑状态,那么该属性返回YES,否则返回NO 当表格处于编辑状态时,可以对表格进行移动,删除,添加,缩进。


删除行:

UITableView,每⼀行都可被删除,在删除前,就要使setEditing:animated⽅法将UITableView设置为可编辑状态 

然后,实现UITableViewDataSource协议中的tableView:commitEditingStyle:forRowAtIndexPath: 方法,最后,调用

deleteRowsAtIndexPaths:withRowAnimation:方法删除表格⾏。



添加行:

使用insertRowsAtIndexPaths:withRowAnimation: 方法添加行



移动行:

tableView:moveRowAtIndexPath:toIndexPath:移动行,方法中有3个参数

第一个参数tableView,代表视图
第⼆个参数sourceIndexPath,代表将要移动的⾏的索引路径
第三个参数destinationIndexPath,代表移动到目标位置的索引路径 




表格行缩进:

tableView:indentationLevelForRowAtIndexPath:方法返回值为NSInteger,代表缩进多少 



在UITableView中,还可以对表格行进行自定义,以改善系统的表格行不够美观的缺点

      新建⼀个类继承⾃UITableViewCell达到定制表格行,这样的话,我们可以通过继承UITableViewCell来添加任意的控件,设置任意的样式 

继承⾃UITableViewCell的类中的UI有几种创建⽅式:

第⼀种:使用代码的⽅式来创建

         新建一个类,继承了 UITableViewCell,然后NewsCell类中重写⽗类的initWithStyle:reuseIdentifier:⽅法 


  最后,要将UITableViewCell替换成我们自定义的Cell


第二种:使用xib⽂件的方式来创建

        新建⼀个类继承⾃UITableViewCell,但是要记得勾选上”Also create XIB file” ,然后直接通过interface builder工具,拖动控件至xib,将类和xib⽂件的属性进行连结 ,最后替换系统cell



第三种storyboard,使⽤动态单元格原型定制表格⾏模型 

stroyboard,允许开发者这节在UITableView中设计单元格的模型

1,⾸先设置content为动态原型Dynamic Prototypes


2,根据需要设置原型的个数 


1,设置重⽤用标识符

2,修改表格⾏行⾼高

3,设计单元格的外观

4,为单元格中的控件设置tag

5,根据重⽤用标识使⽤用单元格

6,根据tag值获取控件,设置内容

7,如果表格⾏行⾼高⼤大于44,需要重写heightForRow⽅方法 



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值