Что такое Guideline в ConstraintLayout

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

Ответ

Guideline — это невидимая направляющая в ConstraintLayout, помогающая выравнивать элементы без создания дополнительных View. Бывает двух типов:

  • Вертикальная (android:orientation="vertical")
  • Горизонтальная (android:orientation="horizontal")

Позиция задается в процентах (app:layout_constraintGuide_percent) или фиксированным отступом (app:layout_constraintGuide_begin).

Пример:

<androidx.constraintlayout.widget.Guideline
    android:id="@+id/guideline"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    app:layout_constraintGuide_percent="0.5" />

<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    app:layout_constraintStart_toStartOf="@id/guideline" />

Плюсы:

  • Упрощает сложные макеты
  • Не влияет на производительность (не рендерится)
  • Гибкость в позиционировании