zoukankan      html  css  js  c++  java
  • Android成长日记-Android布局优化

    Android常用布局

    1. LinearLayout(线性布局)

    2. RelativeLayout(相对布局)

    3. TableLayout(表格布局)

    4. AbsoluteLayou(绝对布局)

    5. FrameLayout(帧布局)

    低--------------使用量------------------à高

    4->3->5->1->2

    Android布局原则

    (1) 尽量多使用LinearLayout和RelativeLayout,不要使用AbsoluteLayout

    (2) 在布局层次一样的情况下,建议使用LinearLayout代替RelativeLayout,因为LinearLayout性能要稍高一些

    (3) 将可复用的组件抽出来并通过include便签使用

    (4) 使用ViewStub标签来加载一些不常用的布局

    (5) 使用merge便签减少布局的嵌套层次

    Eg:

    (一) <include/>的使用

    作用:将共同的组件抽取出来单独放在一个xml文件中,然后使用include标签导入共同布局

    效果:提高UI的制作和复用效率,也能保证制作的UI布局更加规整和易维护

    Op:<include layout=”@layout/common_title”/>

    在布局文件中引入这个相同的布局即可

    (二) 使用merge合并UI布局

    作用:合并UI布局,使用该标签能降低UI布局的嵌套层次

    场景:1.布局根节点是FrameLayout且不需要设置background或padding等属性,可以使用merge代替

    2.某布局作为子布局被其他布局include时,使用merge当做该布局的顶节点,这样再被引入时顶节点会自动被忽略

    (三) 使用ViewStub惰性加载

    作用:ViewStub标签同include标签一样可以用来引入一个外部布局,不同的是,ViewStub引入的布局默认不会扩张,既不会占用显示也不会占用位置,从而在解析Layout时节省cpu和内存

  • 相关阅读:
    NSRunLoop 详解
    Delphi经验总结(2)
    Delphi经验总结(3)
    卸载Windows服务
    Windows 8操作技巧之快捷键大全
    delphi 换行操作 Word
    现在, Delphi 的多线程已经非常易用了!
    XP 之后, Delphi 动注册表不方便了...逼出来一个办法:
    写了一个字符串的二维表: TSta
    现在使用控件, 更喜欢继承
  • 原文地址:https://www.cnblogs.com/boy1025/p/4301953.html
Copyright © 2011-2022 走看看