美文网首页
学习之路—— Android之布局性能优化简单记录

学习之路—— Android之布局性能优化简单记录

作者: 问荆_ | 来源:发表于2019-05-14 10:54 被阅读0次

    前言

    在进行Android学习的过程中免不了接触xml的使用,但是在不断接触和学习中发现自己自己写的xml布局有很多问题:布局冗余、嵌套过多等

    什么是布局的性能

    • 响应时间:解析布局和加载布局的过程

    性能优化方式

    通过性能含义,我们可以推测性能优化是通过一系列操作减少用户操作的响应时间,让用户有更快更好的体验

    布局优化

    • 抽象布局标签

      1、<include> 标签

      include标签常用于将布局中的共用部分抽出来,使得多个布局都可以使用,有效解决了布局的冗余。

      2、<merge> 标签
      这个标签主要是用来减少嵌套,提高布局 解析时间

      有两种典型的用法(只能作为layout 的根节点):
      第一种用法:当前布局是帧布局且只需要 设置必要属性,可用 <merge> 标签替换帧布局。(merge 标签 只能作为layout的根布局)

      第二种用法:在使用 <include> 标签 的时候, 可以使用<merge> 标签 作为它的根布局,这样也可以减少一层布局的嵌套。

      3、<ViewStub> 标签
      这个标签与include标签一样都可以引用外 部布局,不同的是这个标签默认是不会被 加载的,什么意思呢?默认不会显示,常 用与特殊时期布局,如:加载框、网络请 求失败等。

      如何显示ViewStub 标签 内容呢?
      可应通过findViewById()方法拿到ViewS tub 标签对应的ViewStub对象,然后调 用该对象的inflate()方法,即可显示布局

    • 在布局很复杂的情况下使用ConstraintLayout可以有效减少布局的嵌套层数。

    • 适当使用AS提供的工具Layout Inspector工具查看控件树,观察自己的布局书写情况。

    相关文章

      网友评论

          本文标题:学习之路—— Android之布局性能优化简单记录

          本文链接:https://www.haomeiwen.com/subject/chgjaqtx.html