Подтвердить что ты не робот

В чем разница между макетом и контейнером в Android?

В Android Studio, в разделе дизайна, макеты и контейнеры классифицируются отдельно.

В чем принципиальная разница между ними?

4b9b3361

Ответ 1

Я бы определил различия следующим образом:

  • Макеты - это общие цели ViewGroups, имеющие непосредственное отношение к графическим представлениям. У них нет требований к тому, с какими детьми они могут управлять.
  • Контейнеры выполняют более конкретные задачи, поэтому у них есть дополнительные требования о том, сколько и каких детей они могут принять. Из-за этого большинство контейнеров требуют написания классов Adapter, чтобы выразить эти требования.

Ответ 2

Layouts напрямую расширяют ViewGroup. Суффикс Layout является частью имени класса для классов в этой группе, например LinearLayout, RelativeLayout.

Containers - это описание корзины для Views которые обертывают динамический контент. Они более специализированы, чем Layouts и могут, но не обязаны расширять Layout. Некоторые расширяют ViewGroup косвенно, например, ListView, некоторые - например, VideoView. Метка Container используется в Android Studio, но не является частью имени класса.

Ответ 3

A контейнер - это представление, используемое для хранения других представлений. Android предлагает коллекцию классов просмотра, которые выступают в качестве контейнеров для представлений. Эти классы контейнеров называются макетами, и, как следует из названия, они определяют организацию, размер и положение своих представлений своих детей.

Макеты - это в основном контейнеры для других объектов, известных как "Представления", которые отображаются на экране. Макеты также помогают управлять и упорядочивать представления. Макеты определяются в виде файлов XML, которые не могут быть изменены нашим кодом во время выполнения.