Android 的布局优化

加载卡顿的,滑动的卡顿的情况又时候我们需要考虑下是否是布局的是否过于复杂和重叠。

1 在android中我们可以通过HierarchyViewer去查看的每个布局的加载时间和加载速度。

使用方法:1 ddms的视图可以直接调出HierarchyViewer的视图。

                2  /Users/Rrtoyewx/Library/Android/sdk/tools/HierarchyViewer,直接打开即可

Android 的布局优化_第1张图片

其中图中会将所有的视图信息全部measure和layout和draw的时间全部,如果有过多的时间是红色的,你就应该重新整理的布局

2 使用真机的自带的调试GPU的过度调制

使用方法:android手机的开发者选项中的点击打开调试GPU的过度调制。


Android 的布局优化_第2张图片

其中红色代表最多的布局的叠代,白色是最少的,一般只有一层。

3 对布局的优化

1 减少不必要的background的属性

2 尽量使用merge的属性

3 布局的选择从FrameLayout->RelativeLayout->LinearLayout 

4 对于不必要,显示机会的极小的view的使用viewstub的属性。

5 对图片的优化,图片如果在本地,尽量压缩图片,非必要条件使用webp格式的图片,图片的在服务器上,尽量的将图片的大小压缩交给服务器去做,而不是放在本地来做。从而减少解析图片的时间。圆角图片尽量少用。

6 移除Window默认的Background

7 自定义的view 的ondraw的方法:canvas.clipRect(),来帮助系统识别那些可见的区域。这个方法可以指定一块矩形区域,只有在这个区域内才会被绘制,其他的区域会被忽视。canvas.quickreject()来判断是否没和某个矩形相交,从而跳过那些非矩形区域内的绘制操作。

你可能感兴趣的:(Android 的布局优化)