Что такое ViewGroup

«Что такое ViewGroup» — вопрос из категории UI и Views, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

ViewGroup — это подкласс View, который может содержать другие View (дочерние элементы). Он отвечает за расположение и отрисовку своих дочерних элементов.

Примеры ViewGroup:

  • LinearLayout — располагает элементы линейно (вертикально/горизонтально).
  • RelativeLayout — позиционирует элементы относительно друг друга.
  • ConstraintLayout — гибкий макет с ограничениями.
<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello World!" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Click me" />
</LinearLayout>

ViewGroup также обрабатывает события касаний для дочерних элементов и управляет их измерением (measure) и размещением (layout).