最近整理了一些关于加载页面布局文件方面的资料,觉得对我以后的android开发工作很有帮助。我们不能只是单纯的满足于在代码中把界面实现,把功能实现,因为这只能称为是“翻译”界面,“翻译”功能。我们要做的是要把我们的应用更快,更好的,更稳定的运行的手机中!所以我们要关注每个可能为我们的程序带来提升的功能点!而提高加载页面布局文件的速度就是一个很重要的部分!
1、直接在java代码中写布局要比在xml中写的布局文件快,因为省去了解析xml的过程,但是有时候条件限制,需要通过加载xml来加载布局,比如我们的activity通过setContentView来显示界面
2、布局中不要嵌套层过多,嵌套层次过深的话,容易导致栈溢出。android中对栈的大小限制只有几k,所以我们要提高栈的使用率。多一层的嵌套布局加载,就要多耗费很长的加载时间。
3、不要过多使用LinearLayout的layout_weight属性,这个属性会减慢measure的速度。
我们的写的layout文件可以通过Hierarchy Viewer来查看存在的问题,我们可以查看我们layout每一部分计算,布局,渲染所需要的时间。尽量使layout扁平化,深度最好不要超过三层。
在android的官方文档中,推荐使用RelativeLayout和GridLayout来解决Layout深度过深的问题。
我们还可以采用merge,ViewStup,include方式来优化界面Layout