Un SpatialDialog est un composant spatialisé qui apparaît au-dessus du contenu au niveau d'élévation de base.
Afficher une boîte de dialogue spatiale
L'exemple suivant montre une boîte de dialogue spatiale qui s'ouvre après un court délai.
Lorsque SpatialDialog est utilisé, la boîte de dialogue s'affiche à la même profondeur Z que le panneau spatial, et le panneau est repoussé de 125 dp lorsque la spatialisation est activée. SpatialDialog peut également être utilisé lorsque la spatialisation n'est pas activée. Dans ce cas, SpatialDialog utilise son équivalent 2D, 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") } } } } }
Points clés concernant le code
- Il s'agit d'un exemple de
SpatialDialog, mais l'utilisation deSpatialPopupet deSpatialElevationest très similaire. Pour en savoir plus, consultez notre documentation de référence de l'API.