Android优化——UI优化(一)优化布局层次

优化布局层次


1.避免布局镶嵌过深(如下)

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              xmlns:tools="http://schemas.android.com/tools"
              android:layout_width="match_parent"
              android:layout_height="match_parent"
              tools:context=".MainActivity">

    <LinearLayout
        android:id="@+id/main_ll_duoyu"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <TextView
            android:text="@string/hello_world"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"/>

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:gravity="center_horizontal"
            android:layout_gravity="center_vertical"
            >

            <TextView
                android:text="@string/hello_world"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"/>

        </LinearLayout>

    </LinearLayout>

</LinearLayout>
 

我们完全可以去掉id为:main_ll_duoyu的这个LinearLayout,也可以实现我们想要的效果(效果如下)

2.使用工具查看布局

  • 工具路径

sdk\tools\hierarchyviewer.bat | 双击打开

  • 查看布局对比


我们现在去掉了main_ll_duoyu的这个LinearLayout,我们比一下前两张图和最有一张图,中间少了一层,这里只是给举个例子,可以使用google提供的这些工具帮助我们优化app,增加用户体验的流畅性

3.默认最大布局深度

android 默认的对打布局深度为10

时间: 2025-01-18 09:13:41

Android优化——UI优化(一)优化布局层次的相关文章

Android基础UI篇------六种基本布局

1.线性布局 LinearLayout 常用属性: android:gravity 设置子控件的对齐方式 android:orientation 排列方式 (分为水平排列和垂直排列) android:layout_gravity 设置相对于父控件的对齐方式 android:layout_weight 子控件在布局中所占的权重 !LinearLayout不会换行,所以,如果子控件超出屏幕范围,将不会显示. 2.表格布局 TableLayout 继承自LinearLayout,所以,它的本质依然是线

javascript动手写日历组件(2)——优化UI和添加交互(by vczero)

一.优化UI 继上一篇,http://www.cnblogs.com/vczero/p/js_ui_1.html.开始优化UI,主要优化的部分有: (1)增加星期行.(2)字体设置.(3)日期垂直居中.(4)将单元格->底部线条.(5)修改文本的颜色对比.(6)将内部调用的函数加前缀_,如_addHeader()._addWeekday(). 修改的后基本效果如下图: 整个代码做了小修小改: 1 var Calendar = function(div){ 2 this.div = documen

Android App性能优化(一)之布局优化

当创建复杂布局的时候,我们会在xml 文件中添加大量的ViewGroup和View.伴随着每次迭代,View树的层次越来越深,界面加载速度越来越慢,消耗的内存也越来越多.当您的程序出现加载时短暂黑屏或横竖切换时短暂黑屏,抑或如内存溢出(OOM)之类的问题时,没准您的程序需要优化了. 那么如何让程序运行速度更快?响应更敏捷?优化布局是一个最基本的方法,本文将介绍最基本的优化布局方法. 1.使用ViewStub实现View的延迟加载. 很多情况下,xml布局文件中的部分View初始状态是设置为不显示

android app性能优化大汇总(UI渲染性能优化)

UI性能测试 性能优化都需要有一个目标,UI的性能优化也是一样.你可能会觉得“我的app加载很快”很重要,但我们还需要了解终端用户的期望,是否可以去量化这些期望呢?我们可以从人机交互心理学的角度来考虑这个问题.研究表明,0-100毫秒以内的延迟对人来说是瞬时的,100-300毫秒则会感觉明显卡顿,300-1000毫秒会让用户觉得“手机卡死了”,超过1000ms就会让用户想去干别等事情了. 这是人类心理学最基础的理论,我们可以从这个角度去优化页面/view/app的加载时间. Ilya Grigo

安卓使用merge标签和include优化UI布局

转自:http://blog.sina.com.cn/s/blog_62f987620100sf13.html 单独将<merge />标签做个介绍,是因为它在优化UI结构时起到很重要的作用.目的是通过删减多余或者额外的层级,从而优化整个Android Layout的结构.核心功能就是减少冗余的层次从而达到优化UI的目的! 将通过一个例子来了解这个标签实际所产生的作用,这样可以更直观的了解<merge/>的用法. 建立一个简单的Layout,其中包含两个Views元素:ImageV

Android-优化UI性能(5)-优化布局文件

Android-优化UI性能(5)-优化布局文件 1,使用观察布局的工具:Hierarchy Viewer 这时Android用来观察布局的工具,层级观察器, 它是一个优秀的布局优化工具和观察工具 该工具在sdk目录下的tools文件夹 **2,使用布局优化工具:**lint以前叫做layoutopt API16后改为lint,来检测项目的问题 \sdk\tools\lint.bat 版权声明:欢迎交流指正文章的错误,必定虚心接受,QQ872785786

Android优化——UI优化(一)

优化布局层次 1.避免布局镶嵌过深(如下) <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent&quo

Android开发中的性能优化---布局

1.基础 Android中所有的View都是"画"在手机屏幕上的,系统是每隔16ms更新一次Activity中的内容,所以为了让用户看不到卡顿,就要想尽一切方法来让界面在16ms内更改完成,遵循的原则其实只有一个-----尽量的少画东西,这样效率当然就会提高,至于什么减少布局层次,避免重复绘制,总结下来还是尽量少画东西.    为什么是16ms?因为现在市面上的手机一般都是60hz的,所以 16ms/ 帧 ≈ 1s / 60hz 2.方法 使用手机中的开发人员工具--->调试GP

Optimizing Your UI——使用Hierarchy Viewer优化UI

有时候你应用程序的布局可能让应用运行缓慢.为了帮助调试布局中的问题,Android SDK提供了Hierachy Viewer和lint工具. Hierarchy Viewer应用允许你调试和优化UI.它提供了布局View层次结构的可视化体现(View Hierachy窗口),附有布局中每个节点的性能信息,和一个放大的显示视图(Pixel Perfect窗口)来更仔细地检查布局的像素. Android的lint工具是一个静态代码扫描工具,可以帮助你优化应用的布局和布局层次,同时发现其他常见编码问