空間對話方塊

適用的 XR 裝置
本指南可協助您為這類 XR 裝置打造體驗。
XR 頭戴式裝置
有線 XR 眼鏡

SpatialDialog 是空間化元件,會顯示在基本高度層級的內容上方。

顯示空間對話方塊

以下範例顯示在短暫延遲後開啟的空間對話方塊。使用 SpatialDialog 時,對話方塊會顯示在與空間面板相同的 Z 深度,且啟用空間化時,面板會向後推 125dp。未啟用空間化時,也可以使用 SpatialDialog,在這種情況下,SpatialDialog 會改用 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")
                }
            }
        }
    }
}

程式碼重點