安卓系统:在表格布局中设置选项卡的可见性不起作用



我正试图使用数据绑定动态隐藏一个选项卡。代码是

<com.google.android.material.tabs.TabItem
android:id="@+id/tab1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/tab1" />
<com.google.android.material.tabs.TabItem
android:id="@+id/tab2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/tab2" />
<com.google.android.material.tabs.TabItem
android:id="@+id/tab3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="@{vm.flag ? View.VISIBLE : View.GONE}"
android:text="@string/tab3" />

但这不起作用,并且所有三个选项卡始终可见。

我试着在代码中设置为tablayout.getindex(2(.visibility,但这给了我NPE。我该怎么做?

您需要修改传递给视图寻呼机的adaterList。删除第三个元素,它将消失

当您需要显示第三个选项卡时,只需更新adapterList/viewPager即可。查看此帖子

最新更新