天天看點

Android開發 - 掌握ConstraintLayout(九)分組(Group)

使用ConstraintLayout後我們的布局是沒有層級關系的,各個View之間都是平級關系,但是如果根據某個業務條件來控制多個View的顯示與否,我們需要分别對每個View進行控制,需要調用多次setVisibility()。這樣就顯得非常不友善。

本文所介紹的Group就是解決這個問題的。

Group就是一個分組,可以關聯多個View,進而隻需要對這個分組進行控制就可以實作這樣的場景。

我們下面來介紹它的使用。

添加分組

首先,我們添加一個Group:

Android開發 - 掌握ConstraintLayout(九)分組(Group)

關聯元素

然後将頁面上的元素拖動到這個分組中:

Android開發 - 掌握ConstraintLayout(九)分組(Group)

注意這裡将View拖動到這個Group中,并不是建立了一個層級關系,而是Group關聯了這些View,同

上一篇:Barrier的使用

一樣,可以檢視代碼:

Android開發 - 掌握ConstraintLayout(九)分組(Group)

這樣我們就構成了一個分組,然後我們隻需要控制這個分組的顯示與否就可以同時控制其關聯的View的顯示與否了。

顯示控制

我們選中這個Group,然後在右側的屬性欄可以改變其顯示屬性。當然也可以通過代碼來控制:

Android開發 - 掌握ConstraintLayout(九)分組(Group)
findViewById(R.id.group).setVisibility(View.GONE);           

總結

因為傳統布局存在View的層級關系,是以通過控制父View的顯示即可。使用ConstraintLayout後則可以通過使用分組可以解決這樣的問題。

下一篇:

Android開發 - 掌握ConstraintLayout(十)按比例設定視圖大小

,我們将介紹如何按比例設定View的大小。

如有更多疑問,請參考我的其它Android相關部落格:

我的部落格位址

繼續閱讀