ViewStub是什么?它就是一个占位标记,它只有被inflate()之后才加载
<ViewStub
android:id="@+id/hello_next_layout_root"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout="@layout/web_hello_next" />
在java代码中每次check后再使用
private void checkHelloNext() {
if (hello_next_layout_root != null) {
return;
}
ViewStub stub = (ViewStub) findViewById(R.id.hello_next_layout_root);
hello_next_layout_root = stub.inflate();
layoutSayHelloNextPerson = hello_next_layout_root.findViewById(R.id.rLayoutNextPeope);
rLayoutSayHello = hello_next_layout_root.findViewById(R.id.rLayoutSayHello);
}
include一个布局,只是做到了布局文件的模块化,应用场景与ViewStub不同。ViewStub适合于按条件加载布局的情形,从而节省内存等资源。
s
s
s