在构建 Android XR 差异化应用时,您可能需要使用空间界面将内容放置在用户的物理或虚拟环境中。您可以将应用拆分为空间面板、轨道器,并添加空间高度(本页中会详细介绍)。您还可以在设计中融入空间视频。
空间面板
空间面板是 Android XR 应用的基本构建块。您可以使用这些 API 在无限显示屏上打造 XR 差异化体验,让内容在用户的空间中扩展。空间面板用作界面元素、互动组件和沉浸式内容的容器。

了解界面如何缩放和移动
空间面板会根据与用户的距离自动调整大小。这种动态缩放可确保界面元素在不同距离下观看时仍清晰可辨且可交互。在 0.75 米到 1.75 米之间,尺寸保持一致。然后,缩放比例以每米 0.5 米的速度增长,元素会显得更小。
为避免与系统界面发生冲突,请保持在默认面板移动限制内:
- 最小深度:距离用户 0.75 米
- 最大深度:距离用户 5 米
用户可以放大或缩小空间面板,使其足够大,以便无论距离用户多远都能清晰看到。当用户移动空间面板时,Android XR 会自动缩放其大小。
空间面板尺寸
Android XR 旨在让您的应用舒适、易读,并可供广大受众群体使用。为获得最佳体验,系统会使用 0.868 dp-to-dmm。 在头戴式设备上查看时,应用与用户的距离会比在手机或平板电脑上查看时更远,因此应用必须更大,以便于使用。
在全沉浸空间中,空间面板没有最小尺寸限制,但由于物理限制,最大尺寸为 2560dp x 1800dp。

空间面板的放置位置
在全沉浸空间中,您可以确定面板在透视环境和虚拟环境中的位置。当用户从主共享空间切换到全沉浸空间时,元素会保持在相同的可预测位置,除非您指定了自定义位置。
在距离用户视线 1.75 米的位置生成面板中心。 将面板的垂直中心置于用户视线下方 5° 的位置,以最大限度地提高舒适度,因为用户往往会向下看。
为了获得最佳舒适度,请将内容放置在用户视野范围中心 41° 的区域内。 这样可以确保清晰可见,并最大限度地减少头部或身体过度移动。
用户可以在空间中移动,而空间面板会保持在原位。
Android XR 包含现成的互动模式,可让用户顺畅地操作元素,并简化开发流程。用户可以移动元素,以适应其个人空间。您可以配置移动和调整大小行为。
为了帮助用户相对于其空间中的现实世界对象定位界面元素,您可以允许他们将空间面板锚定到现实世界中的特定位置,例如地板、椅子、墙壁、天花板或桌子。锚定仅在透传模式下可用。
为了帮助用户感到稳定和方向感良好,您可以允许用户将空间面板锚定到现实世界中的特定位置,例如地板、椅子、墙壁、天花板或桌子。锚定仅在透传模式下可用。
创建自己的空间布局
您可以将应用分解为多个空间面板,并采用您选择的任何布局。空间界面 API 不会限制面板数量。这些功能包括:能够创建包含行和列以及平面和弯曲行的布局。空间面板的位置可以是特定的,也可以是任意的。了解如何开发空间界面布局。

扁平行布局

曲线行布局

任意位置布局
空间视频
空间视频可为您的内容增添立体感和沉浸感。您可以将它们作为单视场或立体视频整合到您的设计中,在平面、180° 半球形或 360° 球形表面上显示。
轨道飞行器
轨道器是浮动界面元素,通常用于控制空间面板和其锚定的其他实体中的内容。它们可为内容提供更多空间,让用户在主要内容保持可见的情况下快速访问功能。借助轨道器,您可以灵活地集成 现有界面组件或创建新的界面组件
应谨慎使用 Orbiter,并仔细考虑用户需求和意图。大量空间化界面元素可能会导致内容疲劳,并让用户因过多竞争操作而不知所措。建议您调整一些关键导航组件,例如侧边导航栏或导航栏。

主共享空间中来自 Material Design 的非空间化侧边导航栏

全沉浸空间中 Material Design 的空间导航栏

主共享空间中来自 Material Design 的非空间化导航栏

全沉浸空间中 Material Design 的空间导航栏
指南
- 调整面板的内边距,以确定其弹性或百分比位置。
- 确定轨道器的偏移量。建议的视觉距离为 20dp。
- 如有需要,可使用空间高度级别调整轨道器高度级别。默认情况下,它们在 Z 轴深度上提升了 15dp。
- 调整面板大小时,尺寸可以是固定的,也可以是灵活的。
- 确定是否希望 Orbiter 动态展开以适应内容。
应避免的设计模式
- 避免与轨道器重叠超过其大小的 50%。
- 避免将轨道器放置在距离空间面板太远的位置。
- 请勿使用绝对 X 或 Y 坐标。
- 避免使用过多轨道器。
空间海拔
为组件添加空间高度后,该组件会显示在空间面板上方(沿 Z 轴)。这有助于吸引用户的注意力,创建更好的层次结构,并提高可读性。
| 空间高度级别 | 组件 | DP |
|---|---|---|
| 0 | 未分配 | .1dp |
| 1 | Orbiter | 16dp |
| 2 | 未分配 | 24dp |
| 3 | SpatialPopup | 32dp |
| 4 | 未分配 | 40dp |
| 5 | SpatialDialog | 56dp |
大屏应用中的 Material Design 对话框
在 Android XR 中使用空间高度的对话框
大屏应用上的 Material Design 下拉菜单
在 Android XR 中使用高度的下拉菜单
应避免的设计模式
- 避免对大面积和平面(例如底部动作条和侧边动作条)进行空间化或提升。
- 避免提升包含可滚动内容的界面元素。
设计较大的目标尺寸
在 XR 应用中,目标是用户与之互动的可指向区域。Android XR 遵循 Material Design 的目标指南,并建议使用更大的目标,以提高精确度、舒适度和易用性。
确保排版易于阅读
字体清晰度对于在扩展现实中打造舒适的用户体验至关重要。我们建议使用字号为 14dp 或更大、字重为常规或更高的字体比例选项,以提高易读性。
如果您的现有应用遵循 Material Design 指南,则说明它已针对 Android XR 进行了优化。您可以根据 Material Design 定义新应用的排版。
使用 Material Design 组件和布局
在设计 Android XR 应用时,请充分利用 Material Design 的组件库和自适应布局。这些交互式构建块有助于加快开发速度,让您能够专注于核心功能和创新。
Material Design for XR 通过空间界面行为增强了 Material 3 组件和自适应布局。这些功能可让您的应用在平台上更具原生感,并优化空间。
您还可以将现有界面组件放置在轨道器中并应用空间高度,从而实现空间化,如本页所述。
下载 Material 3 Design Kit 即可开始使用。