zoukankan      html  css  js  c++  java
  • Android布局优化

    1,降低布局结构的深度;

    2,重复的布局用include独立出来;

    3,merge标签代替布局文件中的根节点,减少布局的嵌套;

    4,将动态加载的布局用ViewStub包包含,不需要的时候设置为View.GONE,将其隐藏起来;

    5,用hierarchy viewer优化;

    一,layout过于复杂导致丢帧,HierarchyViewer查找activity是否过于复杂,也可以使用手机设置里面的开发者选项,打开Show GPU Overdraw等选项进行观察。

          你还可以使用TraceView来观察CPU的执行情况,更加快捷的找到性能瓶颈;

    二,背景重复绘制,Overdraw有时候是因为你的UI布局存在大量重叠的部分,还有的时候是因为非必须的重叠背景;

    三,你需要避免在for循环里面分配对象占用内存,需要尝试把对象的创建移到循环体之外,自定义View中的onDraw方法也需要引起注意,每次屏幕发生绘制以及动画执行过程中,onDraw方法都会被调用到,避免在onDraw方法里面执行复杂的操作,避免创建对象。对于那些无法避免需要创建对象的情况,我们可以考虑对象池模型,通过对象池来解决频繁创建与销毁的问题,但是这里需要注意结束使用之后,需要手动释放对象池中的对象

  • 相关阅读:
    golang image库的使用
    http1.0/1.1/2.0/h2c/golang使用随笔
    3、逻辑回归 && 正则化
    1、Batch Normalization
    5、极大似然估计
    4、交叉熵与softmax
    2、卷积核,感受野
    Vue学习
    Qeios、github、overleaf、paperwithcode, 越来越多的web云端工具
    投稿遇到的arxiv论文引用问题的办法
  • 原文地址:https://www.cnblogs.com/senior-engineer/p/7866533.html
Copyright © 2011-2022 走看看