您的位置:首页 > 产品设计 > UI/UE

Android中的UI优化之<include/>、<merge>、<ViewStub/>

2016-08-08 10:21 525 查看
1.include

使用很简单,在项目中有重用xml代码的情况时,可以将这些代码放在一个单独的xml文件中,然后在需要的地方使用

<include layout="@layout/title"/>


2.merge

该标签的作用是减少布局层级,我们知道,所有的xml文件的根布局都是FrameLayout。如果一个布局文件中使用FragmeLayout作为根布局的话,那就存在两个相同的FrameLayout,实际上只需要一个就能实现相同的效果。所以在这种情况下,merge的作用是该xml中的View直接加到根布局。还有一个用处就是,当使用include引入xml时,可以将被导入的xml文件的根布局使用merge标签,前提是能实现想要的效果。

3.ViewStub

该标签的作用是当你需要时才会加载,使用他并不会影响UI初始化时的性能。各种不常用的布局像进度条、显示错误消息等可以使用这个标签,以减少内存使用量,加快渲染速度。

<ViewStub
android:id="@+id/stub_import"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom" />


当你想加载布局时,可以使用下面其中一种方法:

((ViewStub) findViewById(R.id.stub_import)).setVisibility(View.VISIBLE);
// or
View importPanel = ((ViewStub) findViewById(R.id.stub_import)).inflate();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: