android widget Group使用不能单独控制某个view的显隐

mac2024-03-13  28

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控制

最新回复(0)