是的,Android ViewStub 可以動態加載。ViewStub 是一個輕量級的占位符視圖,它在布局文件中定義,但在運行時才會被加載。這樣可以減少應用的初始啟動時間,因為它只需要加載實際需要的視圖。
要動態加載 ViewStub,你可以使用 ViewStub.inflate()
方法。例如:
// 在布局文件中定義一個 ViewStub
<ViewStub
android:id="@+id/view_stub"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="16dp"
android:contentDescription="@string/load_more_items" />
// 在 Activity 或 Fragment 中找到 ViewStub 并加載它
ViewStub viewStub = findViewById(R.id.view_stub);
viewStub.inflate();
當你調用 inflate()
方法時,ViewStub 會從布局文件中加載相應的視圖,并將其插入到 ViewStub 的位置。你可以根據需要動態地加載不同的布局,從而實現更靈活的界面切換。