UITableView的重用
在tableView上显示数据时, 我们需要创建cell来显示每一行的具体数据,当一个tableView数据量较大的时候,连续地alloc出cell会占用大量的内存,这时候就引出了tableView的重用队列。
原理:
只需创建屏幕所能显示的cell数+1个cell, 当某个cell完全出屏幕时, 即加入重用队列;
当某一行即将显示到屏幕时, 需要一个cell来显示内容,这时它不会马上创建而是会先去重用队列找是否有可用的cell,如果有相同标记的cell,则可以直接拿来用,否则则需要重新创建 。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{//  1.声明一个cell的标记static NSString *cell_id = @"cell_id";//  2.创建UITableViewCell,并置空UITableViewCell *cell = nil;//  3.到重用队列中查找, 是否有可用的cellcell = [tableView dequeueReusableCellWithIdentifier:cell_id];//  4. 如果没有找到可重用的cell,就只能自己创建了if (cell == nil) {cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:cell_id] autorelease];}//  5.可以正常使用cell.imageView.image = [UIImage imageNamed:@"angel"];cell.textLabel.text = (_dic[_keyArray[indexPath.section]])[indexPath.row];//  6.返回cellreturn cell;
}  

posted on 2014-05-27 13:26 和果子 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/liuyu521/p/3754911.html

UITableView的重用相关推荐

  1. UI一揽子计划 9 (UITableView 、UITableView 、重用机制)

    一. UITableView UITableView继承自UIScrollView,所以可以滚动 表视图的每⼀一条数据都是显示在UITableViewCell对象中 表视图可以分区显⽰示数据,每个分区 ...

  2. UITableView 重用cell方法edequeueReusableCellWithIdentifier,出现错误

    UITableView 使用重用cell方法edequeueReusableCellWithIdentifier,出现错误: *** Terminating app due to uncaught e ...

  3. UITableView学习笔记

    2019独角兽企业重金招聘Python工程师标准>>> http://www.cnblogs.com/smileEvday/archive/2012/06/28/tableView. ...

  4. UITableView的优化原理

    2019独角兽企业重金招聘Python工程师标准>>> 当我们下啦一个 UITableView时,如果没有做优化,只是简单的实现功能代码如下,这样当我们有上百条tableviewce ...

  5. UITableView知识梳理须知—(一)

    1.UITableView掌握 1>  设置UITableView的dataSource.delegate 2>    UITableView多组数据和单组数据的展示 3>  UIT ...

  6. 初步学习UITableView(摘自传智播客)

    #####UITableView UITableView是作为IOS中显示数据列表最常用的一个控件,继承UIScrollView,支持垂直滚动.拥有两种内置的样式,UITableViewStylePl ...

  7. iphone 重用机制

    今天在研究SDWebImage和ASIHTTPRequest实现网络图片异步加载和本地缓存的时候,在UITableView显示图片的时候,出现了一些奇异的现象,比如: 1.TableView一次只能显 ...

  8. UIScrollView的重用机制的理解[转]

    UIScrollView的重用机制的理解 UIScrollView的重用机制的理解.大家都知道这个UIScrollView.UItableVIew是继承UIScrollView的UItableVIew ...

  9. 简述UITableView的属性和用法

    UITableView内置了两种样式:UITableViewStylePlain,UITableViewStyleGrouped <UITableViewDataSource,UITableVi ...

最新文章

  1. 在WPF中使用WinForm控件方法
  2. 存储过程或视图的字符串查询
  3. MySQL对in里面数据进行指定排序:order by field
  4. 解决Windows10搜索框空白的问题
  5. 用户身份与文件的权限(普通权限、特殊权限、隐藏权限和文件控制列表ACL)
  6. Java基础——String类(一)
  7. php对接钉钉_php实现钉钉业务报警机器人
  8. (转)Math.Round() -- c# 与 java的区别
  9. 华为Mate30系列前面板曝光:双曲面刘海屏再获证实
  10. MX250和MX350哪个好一点,区别和差距在哪里?
  11. sql 两大类 DDL数据定义语言 和DCL数据控制语言
  12. HBase Java API类介绍
  13. 【渝粤题库】陕西师范大学292141政府规制经济学作业(专升本)
  14. Java 编写一个类Letter,要求该类创建对象p,并调用方法printLetter输出英文字母表。
  15. 对《java程序员上班那点事》笔者对数组占用内存质疑
  16. CTF—RGB三原色
  17. linux中ERR_PTR、PTR_ERR、IS_ERR和IS_ERR_OR_NULL
  18. Linux系统管理(九)——软件安装工具(RPM、YUM、DEB)
  19. dnf服务器维护11.12,2018dnf11上12会不会归零 | 手游网游页游攻略大全
  20. 【2023】金融市场基本知识

热门文章

  1. 【Java】Springboot项目中jar包加密
  2. 设计模式之单例模式8种实现方式,其八:枚举方式
  3. RabbitMQ在Windows下设置服务启动
  4. 零基础学UI设计,正确的学习方法讲解!
  5. html区分大小写字母吗,javascript变量区分大小写吗?
  6. 数据源改成mysql_flowable流程war修改成数据源为mysql
  7. bigru参数计算_[数据挖掘]华中科技大学 李黎 周达明:基于CNN-BiGRU模型的操作票自动化校验方法...
  8. 授权函php还是提示没权限_大快人心,只需一招,BAT 毒瘤再也不敢滥用权限
  9. oracle中ak约束,Oracle自定义聚集函数
  10. C语言学习笔记---断言函数assert()