Разработка пространственного пользовательского интерфейса для приложений Android на основе Views
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
Применимые устройства XR
Это руководство поможет вам создать опыт использования этих типов XR-устройств.
Использование фреймворка Android Jetpack Compose — лучший способ воспользоваться новейшими достижениями в разработке пользовательского интерфейса Android и убедиться, что ваше приложение соответствует лучшим отраслевым практикам.
Однако если вы еще не выполнили миграцию и работаете над пространственным размещением приложения на базе Android Views , есть несколько подходов, которые вы можете использовать.
Попробуйте способ «Композиции»
Jetpack Compose с использованием Jetpack XR SDK — рекомендуемый набор инструментов для создания пространственного пользовательского интерфейса на Android XR.
arrow_forward
Повторно используйте существующие представления в SpatialPanels
Хотя элементы SpatialPanel входят в библиотеку Jetpack Compose для XR, они также поддерживают View. При использовании Subspace в MainActivity поместите существующее View в SpatialPanel , как показано в следующем примере.
overridefunonCreateView(inflater:LayoutInflater,container:ViewGroup?,savedInstanceState:Bundle?):View{valview=inflater.inflate(R.layout.example_fragment,container,false)view.findViewById<ComposeView>(R.id.compose_view).apply{// Dispose of the Composition when the view's LifecycleOwner// is destroyedsetViewCompositionStrategy(ViewCompositionStrategy.DisposeOnViewTreeLifecycleDestroyed)setContent{// In Compose worldSpatialPanel(SubspaceModifier.height(500.dp).width(500.dp)){Text("Spatial Panel with Orbiter")}}}returnview}
Работайте напрямую с библиотекой Jetpack SceneCore
Compose для XR создан на основе Jetpack SceneCore . Если вы пространственно интерпретируете приложение на основе Views, вы можете продолжать использовать существующий код пользовательского интерфейса в Compose для XR или работать напрямую с Session Jetpack SceneCore.
Панели можно создавать непосредственно из SceneCore, используя PanelEntity . Задайте размер панели в метрах с помощью dimensions или в пикселях с помощью pixelDimensions . Вы можете сделать панели подвижными или изменять их размер, используя соответствующие компоненты. Подробнее см. в разделе Добавление общего поведения к сущностям .
Контент и образцы кода на этой странице предоставлены по лицензиям. Java и OpenJDK – это зарегистрированные товарные знаки корпорации Oracle и ее аффилированных лиц.