Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
51 of 502 menu
◀ ▶

Метод alignByBaseline

Метод alignByBaseline приёмника RowScope расширяет Modifier внутри Row. Он выравнивает элементы по базовой линии шрифта, а не по верхнему или нижнему краю блока текста. Параметров у метода нет.

Синтаксис

Modifier.alignByBaseline()

Пример

Давайте поставим тексты разного размера на одну базовую линию:

import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.compose.foundation.layout.Row import androidx.compose.material3.Text import androidx.compose.ui.Modifier import androidx.compose.ui.unit.sp class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContent { Row { Text( text = "abcde", fontSize = 14.sp, modifier = Modifier.alignByBaseline(), ) Text( text = "12345", fontSize = 28.sp, modifier = Modifier.alignByBaseline(), ) } } } }

На экране буквы обоих текстов встанут на одну линию, как в обычной строке набора.

Пример

Давайте сравним с выравниванием по низу блока:

import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.compose.foundation.layout.Row import androidx.compose.material3.Text import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.unit.sp class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContent { Row { Text( text = "abcde", fontSize = 14.sp, modifier = Modifier.align(Alignment.Bottom), ) Text( text = "12345", fontSize = 28.sp, modifier = Modifier.align(Alignment.Bottom), ) } } } }

На экране тексты прижмутся нижними краями блоков, и базовые линии не совпадут.

Смотрите также

  • метод align,
    который выравнивает элемент по Top или Bottom
  • класс RowScope,
    где объявлен alignByBaseline
  • функция Row,
    в которой выравнивают тексты в ряд
  • класс Alignment,
    который задаёт выравнивание по краям блока
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить