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

Класс BoxScope

Класс BoxScope - приёмник лямбды функции Box и BoxWithConstraints. Его методы расширяют Modifier только внутри этой лямбды. Через них выравнивают элемент в области и задают размер по родителю без перекрытия соседей.

Синтаксис

Box { Text( modifier = Modifier.align(Alignment.Center), text = "abcde", ) }

Методы

Метод Описание
align Ставит дочерний элемент в выбранную точку области Box.
matchParentSize Задаёт размер как у родителя, но не влияет на измерение Box.

Пример

Давайте положим фон на весь Box, а текст - в центр:

import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.compose.foundation.background import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.material3.Text import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.Color class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContent { Box(modifier = Modifier.fillMaxSize()) { Box( modifier = Modifier .matchParentSize() .background(Color.LightGray), ) Text( text = "abcde", modifier = Modifier.align(Alignment.Center), ) } } } }

На экране серый фон займёт всю область, текст окажется по центру поверх него.

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

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