zoukankan      html  css  js  c++  java
  • QF——UITableViewCell性能优化(视图复用机制)

    这几篇博客总结的不错:

      点击进入

      点击进入

    总结起来方案一般有以下几种:

      1.不使用透明视图;

      2.减少视图的个数;

      3.cell复用机制;(重点)

      4.图片缓存;

      5.网络请求使用非主线程。

      6.预渲染???

    cell的复用机制:

      系统刚开始的时候,只会生成屏幕内能显示出的cell。有当屏幕开始滚动,出现新的cell时系统才会创建新的cell对象。这种懒加载的方式看起来很完美,但仔细思考会发现这样做是有很大问题的,有着严重的不足。假如该tableView里有很多个cell,成百上千。那系统就得挨个创建成百上千个cell,这个内存开销是巨大的。面对这个问题,其实有着比较好的解决方案:

      当滑动屏幕时,就会有cell移出屏幕,同时屏幕底部又会有新的cell出现。移出的cell并不会被销毁,而是放入一个池。当将要出现新cell时,会先从该池中检查是否有合适的cell复用。若有,则填充自己的数据后出现在屏幕;若没有,这时才会新建一个cell。这样下来,内存开销减少了很多。。

  • 相关阅读:
    【转】wpa_supplicant与wpa_cli之间通信过程
    CSS Hack
    HTML5测试(二)
    HTML5测试(一)
    百分号编码(URL编码)
    DOM事件处理函数
    JS数组
    JS中for循环嵌套
    Codecombat 游戏攻略(计算机科学三)2
    Codecombat 游戏攻略(计算机科学三)
  • 原文地址:https://www.cnblogs.com/wangerxiansheng/p/4379150.html
Copyright © 2011-2022 走看看