iOS 解决UITableView复用数据重复

原创 2016年08月29日 08:41:34

当页面拉动需要显示新数据的时候,把最后一个cell进行删除 就有可以自定义cell 此方案即可避免重复显示,又重用了cell相对内存管理来说是最好的方案 前两者相对比较消耗内存

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    // 定义唯一标识
    static NSString *CellIdentifier = @"Cell";
    // 通过唯一标识创建cell实例
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

    // 判断为空进行初始化  --(当拉动页面显示超过主页面内容的时候就会重用之前的cell,而不会再次初始化)
    if (!cell) {
        cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];
    }
    else//当页面拉动的时候 当cell存在并且最后一个存在 把它进行删除就出来一个独特的cell我们在进行数据配置即可避免
    {
        while ([cell.contentView.subviews lastObject] != nil) {
            [(UIView *)[cell.contentView.subviews lastObject] removeFromSuperview];
        }
    }
    // 对cell 进行简单地数据配置
    cell.textLabel.text = @"text";
    cell.detailTextLabel.text = @"text";
    cell.imageView.image = [UIImage imageNamed:@"4.png"];

    return cell;
}
版权声明:本文为博主原创文章,未经博主允许不得转载。

总结——关于cell重用导致数据(控件状态)重复的解决方案

最近公司项目做了一个投票和评分功能。效果类似于答题类的功能,多个题目多选或单选。 起初不是我做的,同事采用CollectionView + TableView的方式实现的,开始没觉得有什么问题。但是嵌...
  • sinat_24363257
  • sinat_24363257
  • 2015年09月08日 11:51
  • 1758

iOS - UITableView中的cell因为重用机制导致新的cell的数据出现重复或者错乱

UITableView中的cell可以有很多,一般会通过重用cell来达到节省内存的目的:通过为每个cell指定一个重用标识符(reuseIdentifier),即指定了单元格的种类,当cell滚出屏...
  • dylan_lwb_
  • dylan_lwb_
  • 2014年08月26日 21:33
  • 4064

UITableView中Cell重用机制导致内容重复解决方法

UITableView继承自UIScrollview,是苹果为我们封装好的一个基于scroll的控件。上面主要是一个个的UITableViewCell,可以让UITableViewCell响应一些点击...
  • timtian008
  • timtian008
  • 2016年03月28日 19:23
  • 1397

关于 去除UITableViewCell复用机制 的几种方法

UITableView继承自UIScrollview,是苹果为我们封装好的一个基于scroll的控件。上面主要是一个个的UITableViewCell,可以让UITableViewCell响应一些点击...
  • henry19890519
  • henry19890519
  • 2015年05月13日 14:47
  • 10162

xib创建Cell时重用数据混乱问题解决方案

写这篇文章是因为在项目中遇到了这个问题,,所以拿下来和大家一起分享,...
  • JSON_6
  • JSON_6
  • 2017年04月12日 17:55
  • 825

UITableView性能优化(复用池的使用原理)

@interface MJViewController () @property (nonatomic, strong) NSArray *heros; @property (weak, nonat...
  • gaojq_ios
  • gaojq_ios
  • 2015年07月19日 10:51
  • 652

UITableviewcell重用机制以及解决重绘出现的重叠现象

转载自:  http://m.blog.csdn.net/blog/heyehao2008/27806945 在使用TableView的时候,下面一段代码是必须的,也是最标准的: - (UITa...
  • chenyong05314
  • chenyong05314
  • 2015年04月17日 18:52
  • 7252

iOS开发笔记--解决UITableView中Cell重用机制导致内容出错的方法总结

UITableView继承自UIScrollview,是苹果为我们封装好的一个基于scroll的控件。上面主要是一个个的UITableViewCell,可以让UITableViewCell响应一些点击...
  • hopedark
  • hopedark
  • 2014年05月23日 13:26
  • 4329

【iOS沉思录】UITableView的重用机制与加载优化详解

UITableView可以说是UIKit中最重要的一个组件,用来展示数据列表,还可以灵活使用进行页面的布局。UITableView的使用遵循MVC模式,数据模型(NSObject)、视图(UIView...
  • cordova
  • cordova
  • 2017年02月08日 16:44
  • 1762

UITableView缓存池 重用

iOS开发UI篇—UITableviewcell的性能问题 一、UITableviewcell的一些介绍 UITableView的每一行都是一个UITableViewCell,通过data...
  • u011146511
  • u011146511
  • 2015年11月13日 00:19
  • 1011
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:iOS 解决UITableView复用数据重复
举报原因:
原因补充:

(最多只允许输入30个字)