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

Класс SheetState

Класс SheetState описывает, насколько раскрыт нижний лист ModalBottomSheet. Объект получают из функции rememberModalBottomSheetState и передают в параметр sheetState. Методы show, hide, expand и partialExpand помечены как suspend. Их вызывают из корутины rememberCoroutineScope.

Синтаксис

val sheetState = rememberModalBottomSheetState()

Методы

Метод Описание
show Показывает лист, если он был скрыт.
hide Скрывает лист вниз с анимацией.
expand Раскрывает лист на максимальную высоту.
partialExpand Переводит лист в частично раскрытое положение.

Пример

Давайте раскроем лист методом expand:

import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.compose.material3.Button import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.ModalBottomSheet import androidx.compose.material3.Text import androidx.compose.material3.rememberModalBottomSheetState import androidx.compose.runtime.LaunchedEffect import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.runtime.setValue @OptIn(ExperimentalMaterial3Api::class) class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContent { val sheetState = rememberModalBottomSheetState() var open by remember { mutableStateOf(true) } if (open) { ModalBottomSheet( onDismissRequest = { open = false }, sheetState = sheetState, ) { LaunchedEffect(Unit) { sheetState.expand() } Text(text = "abcde") } } } } }

На экране лист сразу займёт максимальную доступную высоту над системной панелью.

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

  • функция ModalBottomSheet,
    которая принимает SheetState в sheetState
  • функция rememberModalBottomSheetState,
    которая создаёт объект SheetState
  • метод partialExpand,
    который оставляет лист на половине экрана
  • функция Scaffold,
    которая держит основной экран под листом
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить