android性能优化之布局优化

  android性能优化主要包括:布局优化、内存泄漏优化、线程优化、绘制优化、bitmap优化、listview优化。我们度知道布局的渲染是需要时间,当布局的层级越多时,所花费的时间就越多,导致应用性能低下。通常情况下,当布局不是很复杂时我们最好用LinearLayout布局,而不选择性能低的RelativeLayout.但当线性布局没法完成比较复杂的布局需要嵌套其他布局时我们最好使用RelativeLayout.下面讲讲布局优化的主要方法:

   1、使用标签

        通过include标签降低了布局的层级从而改善布局的性能。

例如:titleBar是我们在layout布局下重新定义的布局



2、使用标签

     标签一般是和标签一起使用从而减少布局的层级。如:在上面的示例中当前布局是线性布局,当包含的布局也是线性布局时,我们就可以将包含的布局用标签了,如:


 

3、ViewStub

ViewStub继承View,非常轻量级且宽高都是0,它本身并不参与任何布局和绘制过程。是按需加载的布局,并不需要在一开始初始化时就加载进来。如,网络异常时,这并不是时常发生的,我们只有在发生时才加载相应的布局,提高了初始化性能。ViewStub示例:

其中stub为viewstub的ID,network-error为layout/layout-network-error根布局的ID。加载viewStub的两种方式:

1、View v=(ViewStub)findviewbyid(R.id.network-error).inflate();
2、(ViewStub)findviewbyid(R.id.network-error).setVisibility(View.VISIBLE)




你可能感兴趣的:(android开发)