SpatialDialog – это пространственный компонент, который появляется поверх контента на базовом уровне высоты.
Как показать пространственное диалоговое окно
В следующем примере показано пространственное диалоговое окно, которое открывается после небольшой задержки.
Если используется SpatialDialog, диалоговое окно появляется на той же глубине по оси Z, что и пространственная панель, а панель отодвигается на 125 dp, когда включена пространственная ориентация. SpatialDialog можно использовать и в том случае, если пространственное звучание не включено. Тогда SpatialDialog будет работать как Dialog.
@Composable fun DelayedDialog() { var showDialog by remember { mutableStateOf(false) } LaunchedEffect(Unit) { delay(3000.milliseconds) showDialog = true } if (showDialog) { SpatialDialog( onDismissRequest = { showDialog = false }, SpatialDialogProperties( dismissOnBackPress = true ) ) { Box( Modifier .height(150.dp) .width(150.dp) ) { Button(onClick = { showDialog = false }) { Text("OK") } } } } }
Важные сведения о коде
- Это пример для
SpatialDialog, но дляSpatialPopupиSpatialElevationвсе делается аналогично. Дополнительную информацию можно найти в документации по API.