关于heightForRow和cellForRow方法的调用次数和顺序的系统差异性
来源:互联网 发布:淘宝店铺如何运营 编辑:程序博客网 时间:2024/04/29 05:45
经试验发现在iOS7和iOS8中UITableView的委托方法:
-(CGFloat)tableView:(UITableView*)tableView heightForRowAtIndexPath:(NSIndexPath*)indexPath
和-(UITableViewCell*)tableView:(UITableView*)tableView cellForRowAtIndexPath:(NSIndexPath*)indexPath
的调用次数和顺序是有一定差异性的。
问题:
http://www.cocoachina.com/bbs/read.php?tid-292531-page-1.html
结论:
iOS7.1中先依次调一遍heightForRow方法再依次调一遍cellForRow方法,在调cellForRow方法的时候并不会再调一次对应的heightForRow方法。
iOS8中先依次调heightForRow(如果行数超过屏幕依次调用两次,如果行数很少,没有超过屏幕,只依次调用一次),之后每调一次cellForRow的时候又调一次对应的heightForRow方法。
验证:
代码如下:
当行数为10时在iOS7.1下的输出信息:
当行数为10时在iOS8.1下的输出信息:
当行数为20时在iOS7.1下的输出信息:
当行数为20时在iOS8.1下的输出信息:
由此可见上面对这种系统差异的结论是正确的。
1 0
- 关于heightForRow和cellForRow方法的调用次数和顺序的系统差异性
- 关于heightForRow和cellForRow方法的调用次数和顺序的系统差异性
- 关于heightForRow和cellForRow方法的调用次数和顺序的系统差异性
- iOS中关于UItableview中代理heightForRowAtIndexPath调用次数和顺序的系统差异性
- UITableView的reloadData方法,不执行cellForRow方法,但是执行了numberOfRows和heightForRow方法
- 关于getview方法调用时机和次数的问题
- isset和empty的差异性
- Ibatis和Mybatis的差异性
- 玩聚网和百度新闻的技术差异性
- 色彩的差异性和易读性(2)
- Android ActivityGroup和TabActiviy的差异性
- 模板方法模式和策略模式的相似点和差异性
- UITableView的reloadData方法,不执行cellForRow方法,
- 关于Unity3D对象和脚本实例调用的顺序探究
- 关于构造函数和析构函数的调用顺序
- 关于 UITextField 和 键盘 的通知、代理调用顺序
- 关于接口调用的方法和理解
- 关于NSXMLParser的foundCharacters方法调用次数的问题
- 触发器的使用
- redis-windows服务安装
- 安装完linux后简单制作一些安全设置
- Hadoop Native Libraries
- Android 自定义控件前言
- 关于heightForRow和cellForRow方法的调用次数和顺序的系统差异性
- YTU 2421: C语言习题 矩形法求定积分
- srs之直播数据分析
- Leetcode ☞ 141. Linked List Cycle 【快慢指针 判断是否有环】
- Java的package和import机制
- spring+JDBC开发配置
- android 从存储卡复制文件到apk私有目录
- android:ems="10"是什么意思
- 判断一个整数是否是2的n次幂