UITableView 多选(Multiple Select)列表的实现

本文介绍了如何在iOS开发中实现UITableView的多选功能。通过自定义UITableViewCell,添加一个布尔变量 `_mSelected` 来标记选中状态,并在布局子视图时根据此状态改变背景颜色、文字颜色和选中标记。点击行时切换 `_mSelected` 的值并重新布局,以实现多选列表的效果。完整代码实现可在GitHub找到。
摘要由CSDN通过智能技术生成


      最近的项目需要用到多选列表,照例自己有了初步想法之后,google了下其他人的实现,发现了两个主要的实现方法:

  1. 在设置cell的editingStyle为3。不过这个属性是非公开的,所以使用会有被打回的风险;而且使用固定数字返回的话,Api更新有可能导致不可预估的问题;再者无法对选中标记进行定制。请参考:http://www.iphonedevwiki.net/index.php?title=UITableView
  2. 自己自定义一个UITableViewCell。网上有实例:http://cocoawithlove.com/2009/01/multiple-row-selection-and-editing-in.html

      为了安全起见,个人采用了自定义UITableViewCell的方法,但是查看了2.中的代码后,感觉其代码过于复杂,使用一个单独的CellController来对Cell进行管理,内部的函数重复命名,比较难直接移植应用。并且考虑到项目中需要选中和移动两种编辑状态,因此自己重写了一份多选列表的实现。代码见:https://github.com/zjamming/Mult

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值