tableview的复用问题
2016-07-20 09:31
344 查看
在iOS中,为了减少内存的使用率,提高系统运行的流畅度和用户的体验度,苹果系统做了很多优化。比如说今天要和大家讲一讲,在tableview中的复用问题。如果在tableview上面要显示风格一样的20条数据,但是屏幕只能显示10条数据,那么剩下不显示的十条数据,就不会给它分配内存,当要显示第十一条数据的时候,它会复用第一条数据,其实就是一个模版,我们只要在模版上面将不一样的地方,替换上第十一数据的内容就可以了。每一个cell都会有一个id,我们就是通过这个id来判断,我们要复用哪一个的。//每一行的内容public override UITableViewCell GetCell (UITableView tableView, NSIndexPath indexPath){UITableViewCell cell = tableView.DequeueReusableCell (cellReuseId);if (cell == null) {cell = new UITableViewCell (UITableViewCellStyle.Default, cellReuseId);}cell.TextLabel.Text = "123";return cell;} 首先,我们会从复用池里面找出Id一样的一个cell,这里的id是一个string类型的字符窜,如果找到cell,我们直接拿过来用;如果没有找到,我们再重新new一个出来。
相关文章推荐
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 不可修补的 iOS 漏洞可能导致 iPhone 4s 到 iPhone X 永久越狱
- iOS 12.4 系统遭黑客破解,漏洞危及数百万用户
- c#调用COM组件
- 每日安全资讯:NSO,一家专业入侵 iPhone 的神秘公司
- [转][源代码]Comex公布JailbreakMe 3.0源代码
- C#实现把指定数据写入串口
- C#动态创建button的方法
- C#中抽象方法与虚拟方法的区别
- c#中虚函数的相关使用方法
- C#实现给图片加水印的方法
- C#使用加边法计算行列式的值
- C#实现多线程的同步方法实例分析
- C#中尾递归的使用、优化及编译器优化
- C#中的delegate委托类型基本学习教程
- C#实现子窗体与父窗体通信方法实例总结
- C#通用邮件发送类分享
- 举例讲解C#中自动实现的属性