android widget Group使用不能單獨控制某個view的顯隱
- androidx.constraintlayout.widget.Group
Group 用於控制所引用的一組控件的可見性(Visibility),constraint_referenced_ids用來設置要參考的控件id,多個控件id間以逗號的形式隔開,官方解釋入口
- 舉個栗子:
<androidx.constraintlayout.widget.Group android:id="@+id/group" android:layout_width="wrap_content" android:layout_height="wrap_content" android:visibility="visible" app:constraint_referenced_ids="button1,button2" />
這段代碼控制button1 和 button2 的顯示,在之後只需要設置group的visibility就可控制這兩個button的顯示隱藏
注意
-
使用group管理的view在單獨設置其顯隱無效,group的優先級高於單獨設置
-
某個view有多個group管理時,view地最終顯示狀態跟group在xml文件裏的聲明順序有關,最後聲明的決定view的狀態.如下:
<androidx.constraintlayout.widget.Group android:id="@+id/group" android:layout_width="wrap_content" android:layout_height="wrap_content" android:visibility="visible" app:constraint_referenced_ids="button1,button2" /> <androidx.constraintlayout.widget.Group android:id="@+id/group1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:visibility="invisible" app:constraint_referenced_ids="button1,button4" />
這段代碼表示button1的最終狀態由group1控制