Назначение FrameLayout? - PullRequest
       62

Назначение FrameLayout?

0 голосов
/ 29 января 2020

Все примеры, которые я нахожу для FrameLayout, используют FrameLayout, чтобы сложить несколько дочерних элементов друг над другом. Даже, например, ответ Stackoverflow здесь говорит

Вы используете FrameLayout для укладки дочерних представлений друг на друга,

Официальная документация однако заявляет

FrameLayout разработан, чтобы блокировать область на экране для отображения одного элемента . Как правило, FrameLayout следует использовать для хранения одного дочернего представления ,

Хотя добавление нескольких дочерних объектов возможно, это звучит так, как будто это просто побочный эффект.

Итак, каков изначально предполагаемый вариант использования FrameLayout с одиночным элементом? У кого-нибудь есть пример для этого?

1 Ответ

0 голосов
/ 29 января 2020

Существуют разные цели, по которым FrameLayout только с одним ребенком может быть полезным. Представьте себе загрузочный счетчик, который должен быть центрирован, но не должен заполнять всю страницу, но также вы хотите, чтобы содержимое отображалось при отображении загрузочного счетчика. Возможное решение: FrameLayout с match_parent для ширины и высоты и цвета фона и ProgressBar (Загрузка счетчика) с android:layout_gravity=center как единственным потомком FrameLayout. Так что теперь вы можете установить android:visibility из FrameLayout, чтобы показать или скрыть все это.

...