Если макет верхнего уровня - ConstraintLayout
, вы можете поместить все представления каждого раздела в группу.Установка видимости группы изменяет видимость всех ее участников.См. Group
.
Этот класс управляет видимостью набора ссылочных виджетов.Ссылки на виджеты добавляются в список идентификаторов, разделенных запятыми, например:
<android.support.constraint.Group
android:id="@+id/group"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="visible"
app:constraint_referenced_ids="button4,button9" />
Если макет верхнего уровня не является ConstraintLayout
, то у вас есть несколько вариантов.
Установите видимость каждого элемента секции отдельно (пытаясь избежать этого, но это вариант).Вы можете настроить собственные ссылки на внутренние группы, чтобы упростить ее.
Оберните каждый раздел в другой ViewGroup
, например FrameLayout
.Установка видимости ViewGroup
родителя влияет на видимость всех его потомков.
- раздел 1 -FrameLayoutLinearLayoutImageViewTextView/ LinearLayoutViewPagerПосмотреть- раздел 2 -FrameLayoutLinearLayoutImageViewTextView/ LinearLayoutViewPagerПосмотреть- раздел 3 -FrameLayoutLinearLayoutImageViewTextView/ LinearLayoutViewPagerПосмотреть
Конечно, ViewGroup
может быть LinearLayout
, RelativeLayout
и т. Д. - все, что имеет смысл.FrameLayout
используется в качестве примера.