Material Design udostępnia komponenty i układy dla XR. Korzystając z biblioteki Material 3, układów adaptacyjnych i biblioteki XR Compose Material 3, możesz tworzyć zachowania interfejsu przestrzennego w aplikacji Compose.
Dodaj bibliotekę XR Compose Material 3 do zależności aplikacji, aby używać komponentów Material 3 dla XR, lub umieść standardowe komponenty Material 3 bezpośrednio w kontenerach Jetpack Compose dla XR, takich jak Orbiter, SpatialDialog i SpatialPanel.
Używanie komponentów Material 3 dla XR
Biblioteka androidx.xr.compose.material3 udostępnia komponenty Material 3 dla XR do typowych wzorców interfejsu przestrzennego, w tym szyny i paski nawigacyjne, górne paski aplikacji, pływające paski narzędzi, okna, układy listy i szczegółów oraz przycisk przełączania między trybem przestrzeni domowej a trybem pełnej przestrzeni. Komponenty Spatial* z dźwiękiem przestrzennym w tej bibliotece są eksperymentalne i wymagają wyrażenia zgody za pomocą @OptIn(ExperimentalMaterial3XrApi::class).
Zaznacz LocalSpatialCapabilities.current.isSpatialUiEnabled, aby renderować komponenty Material 3 dla XR, gdy interfejs przestrzenny jest włączony, i standardowe komponenty Material 3, gdy interfejs przestrzenny nie jest włączony. Więcej informacji znajdziesz w artykule o sprawdzaniu możliwości przestrzennych.
Kolumna nawigacji
Użyj SpatialNavigationRail lub SpatialWideNavigationRail, aby wyświetlić pasek nawigacyjny Material 3 w wyrównanym do początku Orbiter, gdy włączony jest interfejs przestrzenny. Więcej informacji znajdziesz w wytycznych dotyczących Material Design.

Kolumna nawigacji bez efektu przestrzennego

Przestrzenna (dostosowana do XR) kolumna nawigacji
Pasek nawigacyjny
Użyj SpatialNavigationBar lub SpatialShortNavigationBar, aby wyświetlić pasek nawigacyjny Material 3 w wyrównanym do dołu Orbiter, gdy włączony jest interfejs przestrzenny. Więcej informacji znajdziesz w wytycznych dotyczących Material Design.

Pasek nawigacyjny bez dźwięku przestrzennego

Pasek nawigacyjny z dźwiękiem przestrzennym (dostosowany do XR)
Okna
Użyj SpatialBasicAlertDialog, aby wyświetlić podstawowe okno alertu w SpatialDialog z podniesieniem przestrzennym, lub umieść standardową zawartość okna Material 3 bezpośrednio w SpatialDialog.
Więcej informacji znajdziesz w sekcji Okna i wytycznych dotyczących projektowania adaptacyjnego.

Niesprzestrzennie rozmieszczone dialogi

Okno przestrzenne (dostosowane do XR)
Górne paski aplikacji
Użyj SpatialTopAppBar lub SpatialTwoRowsTopAppBar, aby wyświetlić górny pasek aplikacji Material 3 w wyrównanym do góry elemencie Orbiter, gdy włączony jest interfejs przestrzenny.
Więcej informacji znajdziesz w sekcji Górne paski aplikacji i wytycznych dotyczących projektowania adaptacyjnego.

Niesprzestrzenniony górny pasek aplikacji

Przestrzenny (dostosowany do XR) górny pasek aplikacji
Układ szczegółowej listy na potrzeby XR
Używaj SpatialListDetailPaneScaffold, gdy włączony jest interfejs przestrzenny, aby wyświetlać elastyczny układ listy i szczegółów Material 3, w którym każdy panel jest umieszczony we własnym SpatialPanel. Gdy interfejs przestrzenny nie jest włączony, użyj ListDetailPaneScaffold. Więcej informacji znajdziesz w sekcji Układ szczegółowej listy oraz w wytycznych dotyczących projektowania adaptacyjnego.

Nieprzestrzenny komponent ListDetailPaneScaffold

Przestrzenny (dostosowany do XR) ListDetailPaneScaffold
Obsługa układu panelu w XR
Gdy interfejs przestrzenny jest włączony, umieść panel główny i panel pomocniczy w osobnych kontenerach SpatialPanel w elemencie SpatialRow w elemencie Subspace. Gdy interfejs przestrzenny nie jest włączony, użyj SupportingPaneScaffold. Więcej informacji znajdziesz w sekcji Panel dodatkowy i wytycznych dotyczących projektowania adaptacyjnego.

Nieprzestrzenny komponent SupportingPaneScaffold

Przestrzenny (dostosowany do XR) komponent SupportingPaneScaffold
Zacznij projektować za pomocą zestawu Material 3 Design Kit dla Figmy

Pobierz zestaw do projektowania Material 3, aby rozpocząć
Zobacz też
- Tworzenie interfejsu za pomocą Jetpack Compose for XR
- Przechodzenie z przestrzeni bazowej do pełnej przestrzeni
- Wytyczne dotyczące projektowania interfejsu przestrzennego