insertRowsAtIndexPaths 和 deleteRowsAtIndexPaths 的使用
来源:互联网 发布:大数据架构师培训视频 编辑:程序博客网 时间:2024/06/09 23:19
效果图:
1.插入成功:
2.删除成功:
3.主要记录下思路:
3.1>首先理清tableView的数据源方法和代理方法的调用周期
numberOfSectionsInTableView
numberOfRowsInSection
heightForRowAtIndexPath
3.1.1)以上三个方法,系统默认首先按顺序调用两遍以作准备。然后系统就会调用具体的cell的方法:
cellForRowAtIndexPath
更为重要的是:以上三个方法,可以归结为只要有cell的变化(无论新增或删除)都会调用。
3.1.2)系统每调用一次“cellForRowAtIndexPath”方法必会再调用一次“heightForRowAtIndexPath”方法。
3.1.3)“”方法可归结为只要有cell的新增才会调用。没有新增(即删除不会调用)。
3.2>所以“insertRowsAtIndexPaths”方法比如插入两个路径时,只会重新调用“cellForRowAtIndexPath”方法两次,路径为新增加的这两个路径(“indexPath.row”不再是从0开始)
3.2.1)“insertRowsAtIndexPaths”方法时需要注意的问题:插入路径的同时,要同步插入数据,以保证插入后的数据总量正确(比如原来数据为2个,插入两条路径,然后数据也要插入两条,以达到4个数据总量)
3.2.2)“deleteRowsAtIndexPaths”方法时需要注意的问题(删除多个路径时):同样删除路径的时候,要同步删除数据。这个方法是一个一个删除数据的,当删除一个数据后,数据的索引会重新排列,需要特别注意。
4.插入可以看成是一个二级列表的展开。二级列表展开的另一种思路:
4.1>首先可以把第一级列表看成是tableView的多个组(sections)。然后用“viewForHeaderInSection”自定义第一级列表的cell,那么第二级列表就是点击每组所展现的具体rows。
- insertRowsAtIndexPaths 和 deleteRowsAtIndexPaths 的使用
- iOS开发:UITableView的deleteRowsAtIndexPaths方法的使用
- deleteRowsAtIndexPaths的NSInternalInconsistencyException异常
- deleteRowsAtIndexPaths
- 调用deleteRowsAtIndexPaths:withRowAnimation:崩溃的问题
- 删除tableview的cell时 deleteRowsAtIndexPaths崩溃
- IOS -- 调用deleteRowsAtIndexPaths:withRowAnimation:崩溃的问题
- insertRowsAtIndexPaths errors
- [ tableView deleteRowsAtIndexPaths:array withRowAnimation:UITableViewRowAnimationRight ]; 执行的顺序
- 用sdk3.0编译运行 UITableView deleteRowsAtIndexPaths的时候就挂掉
- 调用删除方法UITableView deleteRowsAtIndexPaths的时候就挂掉
- 调用删除方法UITableView deleteRowsAtIndexPaths的时候就挂掉
- deleteRowsAtIndexPaths崩溃
- iOS调试——关于insertRowsAtIndexPaths方法崩溃以及动画实效的处理办法
- iOS deleteRowsAtIndexPaths报错
- swift tableView deleteRowsAtIndexPaths
- 关于Tableview 方法insertRowsAtIndexPaths 报错问题
- 调用deleteRowsAtIndexPaths没有刷新表格怎么办?
- JAVA笔记40——引用类型比较1:内置数据类型比较+comparable接口+comparator接口
- 【转载】五大常用算法之四:回溯法
- preempt_enable 和 preempt_disable
- Unity3D技术之Unity3D中的协程(Coroutine)详解
- Java线程与Linux内核线程的映射关系
- insertRowsAtIndexPaths 和 deleteRowsAtIndexPaths 的使用
- 你是微信吗?
- jsp变量作用域,page,request,session和application
- Unity3d技术之关于射线的制作详解
- 解决linux centos 数据库mysql 时间不同步问题
- COCOS2DX 3.X 解决TABLEVIEW 、SCROLLVIEW上的MENU问题
- C++/C学习笔记--(8)
- Unity3D面试高频问答题目
- 关于nandflsh 快速对安全区操作一些问题及其解决