Wdrażanie Material Design w przestrzennym interfejsie

Odpowiednie urządzenia z XR
Te wskazówki pomogą Ci tworzyć treści na te typy urządzeń z XR.
Gogle XR
Przewodowe okulary XR

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.

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

Kolumna nawigacji bez efektu przestrzennego

Przestrzenny (dostosowany do XR) pasek nawigacyjny

Przestrzenna (dostosowana do XR) kolumna nawigacji

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 bez dźwięku przestrzennego

Przestrzenny (dostosowany do XR) pasek nawigacyjny

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.

Dźwięk bez efektu przestrzennego
(dialogi)

Niesprzestrzennie rozmieszczone dialogi

Okno dialogowe z dźwiękiem przestrzennym (dostosowane do XR)

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

Niesprzestrzenniony górny pasek aplikacji

Przestrzenny (dostosowany do XR) 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.

Bez efektu przestrzennego
ListDetailPaneScaffold

Nieprzestrzenny komponent ListDetailPaneScaffold

Przestrzenny (dostosowany do XR)
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.

Bez dźwięku przestrzennego
SupportingPaneScaffold

Nieprzestrzenny komponent SupportingPaneScaffold

Przestrzenny (dostosowany do XR)
SupportingPaneScaffold

Przestrzenny (dostosowany do XR) komponent SupportingPaneScaffold

Zacznij projektować za pomocą zestawu Material 3 Design Kit dla Figmy

Kolaż elementów z zestawu Material 3 Design Kit

Pobierz zestaw do projektowania Material 3, aby rozpocząć

Zobacz też