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

Функция Column

Функция Column ставит дочерние элементы в вертикальный столбец, сверху вниз. Дочерние элементы передаются в лямбду content. Вдоль столбца их распределяет параметр verticalArrangement, поперёк столбца - параметр horizontalAlignment. По умолчанию столбец занимает высоту своих дочерних элементов и прижимает их к началу столбца.

Синтаксис

Column { child1() child2() }

Параметры

Параметр Описание
content Лямбда с дочерними элементами. В столбец они встают в том порядке, в каком записаны. Приёмник лямбды - класс ColumnScope.
verticalArrangement Распределение дочерних элементов вдоль столбца. Принимает значение класса Arrangement.
horizontalAlignment Выравнивание дочерних элементов поперёк столбца, то есть по горизонтали. Принимает значение класса Alignment.

Пример

Давайте поставим два текста в один столбец:

import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.compose.foundation.layout.Column import androidx.compose.material3.Text class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContent { Column { Text(text = "abcde") Text(text = "12345") } } } }

На экране два текста встанут один под другим и прижмутся к началу столбца.

Пример

Давайте раздвинем тот же столбец по краям:

import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.fillMaxHeight import androidx.compose.material3.Text import androidx.compose.ui.Modifier class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContent { Column( verticalArrangement = Arrangement.SpaceBetween, modifier = Modifier.fillMaxHeight(), ) { Text(text = "abcde") Text(text = "12345") } } } }

На экране первый текст встанет у начала столбца, второй - у конца.

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

  • функция Row,
    которая ставит дочерние элементы в горизонтальный ряд
  • функция Box,
    которая кладёт дочерние элементы друг на друга
  • метод weight,
    который отдаёт дочернему элементу свободное место в столбце
  • класс Arrangement,
    который задаёт распределение вдоль столбца
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить