cell动态添加删除控件优化

前言

今天做了一个小小的测试,记录一下,当我们使用tableview的时候,有可能逼不得已去使用动态添加控件(最好的办法控制数据源),这样会导致内存变高,性能不好的问题。。。

  • 不知道思路对不对。 希望各位道友提出意见,指出错误
小思路

如果每次cell刷新都会去动态的添加删除,这样很耗性能,
so》。。。个人的小思路,有效的提升性能,把初始化的控件放到数组里面。只是单纯的移除试图,下次拿过来继续用,就只要初始化最多的数量就可以了

直接添代码

func setupView(_ model: HomeDetails) {
        
        titleNode.text = model.title
        
        // 移除存储器的试图
        for node in self.viewDataArray {
            node.removeFromSuperview()
        }
        
        /// 缓存区----如果需要初始化的试图多余数组的count。就先初始化
        MLLog("前======="+"\(self.viewDataArray.count)")
        let num = model.list!.count-1
        let cha = model.list!.count - self.viewDataArray.count
        if cha > 0 {
            for _ in 0...cha-1 {
                let backView = MLOpenNode()
                self.viewDataArray.append(backView)
            }
        }
        MLLog("后---------"+"\(self.viewDataArray.count)")
        
        // 从存储器里拿出之前初始化的试图addsubview
        for index in 0...num {
            let backView = self.viewDataArray[index] as! MLOpenNode
            self.contentView.addSubview(backView)
            
            let detail_model = model.list![index]
            backView.titleNode.text = detail_model.name
            backView.countNode.text = detail_model.num
 
            backView.snp.makeConstraints { (make) in
                make.top.equalTo(44*index)
                make.left.equalTo(130)
                make.right.equalTo(self.contentView)
                make.height.equalTo(44)
            }
        }
    }
测试图
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.ios高性能编程 (1).内层 最小的内层平均值和峰值(2).耗电量 高效的算法和数据结构(3).初始化时...
    欧辰_OSR阅读 29,868评论 8 265
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,238评论 4 61
  • 文/意磬 [67]涌动 方继龙将争取到的期房,挂到房产中介公司出售,自己则拿着父亲的遗产,返回了深圳。 临走的时候...
    意磬阅读 9,990评论 86 73
  • 昨天是七夕,一个美丽浪漫让人愿意微微一笑的日子。 家里之前买回一本近代传奇女子的雅书。作者张其姝有言: 遇到一个有...
    香草姐姐阅读 2,944评论 1 0
  • 我们都会有事做好,我们的确是否值得得罪 轻轻就功成名就?我是 我们都会有事做好!
    和煦阳光szx阅读 1,150评论 0 0