如何在UITableView里动态添加 cell
2016-04-27 22:24
597 查看
在项目开发时常常会遇到点击cell的时候,在这个cell的下面重新出现一个新的cell,之前的cell都往下移动,再次点击原来的cell,页面又会回到原来的样子,那么这个动态创建cell的效果是如何实现的呢,经过个人实践,总结自己成功方法如下:
第一种:主要通过UITableView的指定indexpath删除和插入的两个方法
- (void)insertRowsAtIndexPaths:(NSArray<NSIndexPath *> *)indexPaths withRowAnimation:(UITableViewRowAnimation)animation;
- (void)deleteRowsAtIndexPaths:(NSArray<NSIndexPath *> *)indexPaths withRowAnimation:(UITableViewRowAnimation)animation;
注意: 动态创建cell的关键点在于我们在某个位置插入或者删除 一个指定cell, 需要在调用上方的方法前更新数据源里的数据,并且数据源里出现两种cell,在下面的方法里一般都需要判断cell类型,并返回相应的数据。具体的示例如下:
1.在对应的控制器里用一个可变数组作为属性,在这个数组里主要存放每个cell的类型及当前cell下面是否有子cell展现:
代码中的i<6,在开发时改为i小于请求回来的数据模型的总数的量,这样保证每个cell对应该数组一个元素,记录每个cell的类型及状态。
2.因为需要展示两种cell,在展示cell的数据源及代理方法要进行以下的判断
3.删除和插入的关键来了
关键的方法都列出来了,实现展开,和关闭的效果如下
好了,不早了,其他方法下次写了,楼主洗洗睡了
第一种:主要通过UITableView的指定indexpath删除和插入的两个方法
- (void)insertRowsAtIndexPaths:(NSArray<NSIndexPath *> *)indexPaths withRowAnimation:(UITableViewRowAnimation)animation;
- (void)deleteRowsAtIndexPaths:(NSArray<NSIndexPath *> *)indexPaths withRowAnimation:(UITableViewRowAnimation)animation;
注意: 动态创建cell的关键点在于我们在某个位置插入或者删除 一个指定cell, 需要在调用上方的方法前更新数据源里的数据,并且数据源里出现两种cell,在下面的方法里一般都需要判断cell类型,并返回相应的数据。具体的示例如下:
1.在对应的控制器里用一个可变数组作为属性,在这个数组里主要存放每个cell的类型及当前cell下面是否有子cell展现:
代码中的i<6,在开发时改为i小于请求回来的数据模型的总数的量,这样保证每个cell对应该数组一个元素,记录每个cell的类型及状态。
2.因为需要展示两种cell,在展示cell的数据源及代理方法要进行以下的判断
3.删除和插入的关键来了
关键的方法都列出来了,实现展开,和关闭的效果如下
好了,不早了,其他方法下次写了,楼主洗洗睡了
相关文章推荐
- 几种常用容器的分析与比较
- IOS开发-UIView之动画效果的实现方法(
- 共同学习Java源代码--常用工具类--AbstractStringBuilder(七)
- 开发测试时给 Kafka 发消息的 UI 发送器――Mikasa
- 详解 $_SERVER 函数中QUERY_STRING和REQUEST_URI区别
- leetcode-303. Range Sum Query - Immutable
- Android 图文混排spannableStringBuilder简单使用
- IDEA 主题、字体、编辑区主题、文件编码修改
- 设置UITabBarController的用法
- js/jquer获取web页面上传文件的大小
- sdut 2605 Mountain Subsequences(树状数组)
- Implement Stack using Queues
- xcode7.3出现the behavior of the UICollectionViewFlowLayout is not defined警告
- Codeforces--237E--Build String(最小费用流)
- note:debugging requires the debug connect session system privilege
- RxJS入门(4)----深入Sequence
- sql gui 工具
- 自定义UITableViewCell左滑显示编辑按钮
- phalcon builder get raw sql
- iOS UI调试神器,插件injection for Xcode使用方法