zoukankan      html  css  js  c++  java
  • UITableViewCell注册情况

    下面的创建cell的样式(subTitle),要求必须注册否则程序会崩溃.

      这三种写法都是可以正常运行的,且cell都是循环利用的,主要思路就是:如果缓存池中有cell,就从缓存池取出cell来重用

      可以避免对象销毁和创建所需要的时间和空间成本,优化程序性能.

    1>dequeueReusableCellWithIdentifier,这个方法的意思是先去缓存池中取得对应类型的cell,结过为空代表缓存池中没有对应类型的cell

        需要手动创建,

       需要注意的就是:注册这个操作的意义,

    2>可以根据注册的cell类型在缓存池找到对应的cell来重用,比如cell有两种类型default和subTitle,因为两种cell的显示是不同的,

        根据注册的类型就可以准确的找到需要的cell

    3>如果缓存池中没有可以重用的cell,如果注册过cell,系统会自动创建对应类型的cell,不需要手动创建.且注册后的cell是重复利用的

        可以通过打印cell地址来观察.

    4>如果没有注册cell,也没有去缓存池中取cell来重用,每一次都是新创建的cell就会有性能问题

    5>如果单单去缓存池中取cell,却没有注册该cell是危险的,因为缓存池中可能会有多种不同类型的cell,就会造成你取到的cell类型

        不是你需要的cell类型.

  • 相关阅读:
    Ajax 发送OPTION请求
    用cssText批量修改样式
    原生js操作HTML DOM
    每天干的啥?(2018.09)
    每天干的啥?(2018.08)
    每天干的啥?(2018.07)
    每天干的啥?(2018.06)
    每天干的啥?(2018.05)
    每天干的啥?(2018.04)
    每天干的啥?(2018.03)
  • 原文地址:https://www.cnblogs.com/LDSmallCat/p/5084512.html
Copyright © 2011-2022 走看看