Android性能优化:布局优化 详细解析(含、、讲解 )

  • Android开发中,性能优化策略十分重要
  • 本文主要讲解性能优化中的布局优化,希望你们会喜欢。

目录

Android性能优化:布局优化 详细解析(含、、讲解 )_第1张图片


1. 影响的性能

布局性能的好坏 主要影响 :Android应用中的页面显示速度


2. 如何影响性能

布局影响Android性能的实质:页面的测量 & 绘制时间

1个页面通过递归 完成测量 & 绘制过程 = measurelayout 过程


3. 优化思路

  • 优化方向:布局性能、布局层级、布局复用性 和 测量 & 绘制时间
  • 具体如下

Android性能优化:布局优化 详细解析(含、、讲解 )_第2张图片

针对 页面布局的性能、层级、测量绘制时间 进行优化,从而提高 Android应用中的页面显示速度


4. 具体优化方案

  • 具体如下

  • 下面,我将详细分析每种优化方案

4.1 选择 耗费性能较少的布局

  • 性能耗费低的布局 = 功能简单 = FrameLayoutLinearLayout
  • 性能耗费高的布局 = 功能复杂 = RelativeLayout

即 布局过程需消耗更多性能(CPU资源 & 时间)

注:

  1. 嵌套所耗费的性能 > 单个布局本身耗费的性能
  2. 即 完成需求时:宁选择 1个耗费性能高的布局,也不采用嵌套多个耗费性能低的布局

4.2 减少布局的层级(嵌套)

  • 原理:布局层级少 ->> 绘制的工作量少 ->> 绘制速度快 ->> 性能提高
  • 优化方式:使用布局标签 & 合适选择布局类型

4.2.1 使用布局标签

  • 作用
    减少 布局层级

配合标签使用,可优化 加载布局文件时的资源消耗

  • 具体使用
  // 使用说明:
    // 1. 作为被引用布局A的根标签
    // 2. 当其他布局通过标签引用布局A时,布局A中的标签内容(根节点)会被去掉,在里存放的是布局A中的标签内容(根节点)的子标签(即子节点),以此减少布局文件的层次

/**
* 实例说明:在上述例子,在布局B中 通过标签引用布局C
* 此时:布局层级为 = RelativeLayout ->> Button
* —>> RelativeLayout ->> Button
* ->> TextView
* 现在使用优化:将 被引用布局C根标签 的RelativeLayout 改为
* 在引用布局C时,布局C中的标签内容(根节点)会被去掉,在里存放的是布局C中的标签内容(根节点)的子标签(即子节点)
* 即 里存放的是:

你可能感兴趣的:(Android)