• 如何优化TableView


    关于UITable的优化:

    1.最常用的就是不重复生成单元格,很常见,很实用;

    2.使用不透明的视图可以提高渲染速度,xCode中默认TableCell的背景就是不透明的;

    3.如果有必要减少视图中的条目,本文中设置textLabel,detialTextLabel,imageView,a ccessoryType;

     
    4.更新条目的时候不要整体更新,更新选中的即可,建议reloadRowsAtIndexPaths,而不是使用reloadData;
     
     
    • 提前计算并缓存好高度(布局),因为heightForRowAtIndexPath:是调用最频繁的方法;

    • 异步绘制,遇到复杂界面,遇到性能瓶颈时,可能就是突破口;

    • 滑动时按需加载,这个在大量图片展示,网络加载的时候很管用!(SDWebImage已经实现异步加载,配合这条性能杠杠的)。

    除了上面最主要的三个方面外,还有很多几乎大伙都很熟知的优化点:

    • 正确使用reuseIdentifier来重用Cells

    • 尽量使所有的view opaque,包括Cell自身

    • 尽量少用或不用透明图层

    • 如果Cell内现实的内容来自web,使用异步加载,缓存请求结果

    • 减少subviews的数量

    • 在heightForRowAtIndexPath:中尽量不使用cellForRowAtIndexPath:,如果你需要用到它,只用一次然后缓存结果

    • 尽量少用addView给Cell动态添加View,可以初始化时就添加,然后通过hide来控制是否显示 
  • 相关阅读:
    tomcat安装
    卸载重安firefox
    Metasploit笔记之信息收集命令
    postgresql-9.0.18-1-linux.run启动
    ubuntu 安装自启动管理
    MySQL数据库”mysql SQL Error:1146,SQLState:42S02 “解决方法
    PE笔记之节表
    标准类型String(学习中)
    链表实现(打印元素的实现)
    C++中new和delete来创建和释放动态数组
  • 原文地址:https://www.cnblogs.com/KiVen2015/p/5586556.html
Copyright © 2020-2023  润新知