Android之ViewStub
在日常Xml布局中我们常常会用的<include/>标签去重用一些layout布局文件,但是在有些情况下有些重用layout其实很少用到(或者换一种说法,是很少显示).在这种情况下使用<ViewStub/>标签替代<include/>标签,这样这种很少使用的layout就不会加载到主要的Layout布局文件中,节约的加载时间和开销,当我们需要使用该layout的时候直接调用ViewStub中的inflate()方法就可以显示出重用的layout布局文件。
使用ViewStub属性其实非常简单,在xml布局中的代码片段如下.
<ViewStub android:id="@+id/stub" android:inflatedId="@+id/subTree" android:layout="@layout/view_stub_test" android:layout_width="wrap_content" android:layout_height="wrap_content" />
解释一下2个属性:
android:layout="@layout/view_stub_test"
这个属性与<include/>标签中layout属性一样,指明填充的layout布局。
android:inflatedId="@+id/subTree"
这个属性其实是填充的layout布局的重命名.
如果需要使用填充的layout布局(即view_stub_test)在代码中,只需要简单的调用如下即可
viewStub = (ViewStub)findViewById(R.id.stub); viewStub.inflate();
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。