Класс Gravity
Класс Gravity
хранит битовые флаги выравнивания.
Их ставят в android:gravity
у
LinearLayout
и в android:layout_gravity
у дочернего View в
FrameLayout.
Из Kotlin передают Gravity.CENTER
и похожие константы.
Отдельный урок на каждое значение не делают.
Синтаксис
Gravity.CENTER
Значения
| Значение | Описание |
|---|---|
START |
Прижимает содержимое к началу горизонтальной оси. При LTR это левый край. |
END |
Прижимает содержимое к концу горизонтальной оси. |
TOP |
Прижимает содержимое к верхнему краю. |
BOTTOM |
Прижимает содержимое к нижнему краю. |
CENTER |
Центрирует содержимое по горизонтали и вертикали. |
CENTER_HORIZONTAL |
Центрирует только по горизонтали. |
CENTER_VERTICAL |
Центрирует только по вертикали. |
Пример
Давайте центрируем текст в LinearLayout:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center">
<TextView
android:id="@+id/label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="abcde" />
</LinearLayout>
На экране строка "abcde"
окажется по центру layout.
Пример
Давайте прижмём View к низу FrameLayout:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="200dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|center_horizontal"
android:text="12345" />
</FrameLayout>
На экране текст "12345"
встанет по центру нижнего края.
Смотрите также
-
класс
LinearLayout,
где задают android:gravity -
класс
FrameLayout,
где у дочерних View ставят layout_gravity -
класс
Alignment,
выравнивание в Jetpack Compose -
класс
View,
метод setGravity у некоторых виджетов