第 2 级 — 自适应优化

经过优化的应用完全支持所有屏幕类型和设备状态,包括状态转换。

三个质量层级以垂直堆叠的层表示,其中中间层突出显示。

指南

构建可适应所有显示大小和设备状态的应用。

界面

Guideline ID Test IDs Description
Responsive_adaptive_layouts T-Layout_Flow

应用采用专为所有屏幕尺寸设计的响应式自适应布局。所有布局都是响应式的(请参阅将界面迁移到响应式布局)。自适应布局的实现由窗口大小类别决定。

应用界面可以包含以下内容:

  • 前缘侧边导航栏;在尺寸较大的窗口上,此栏会扩展为完整的导航面板
  • 网格布局,可调整列数以适应窗口大小变化
  • 文本列(在大屏设备上)
  • 尾部边缘的面板;在桌面设备尺寸的屏幕上默认打开,在较小的屏幕上关闭

创建多窗格布局(如果适用),以充分利用大屏幕空间。请参阅规范布局

借助 activity 嵌入,基于 activity 的应用可以通过并排显示 activity 来打造多窗格布局。

UI_Secondary_Elements T-Layout_Flow

模态、上下文菜单和其他辅助元素在所有屏幕类型和设备状态下均采用正确的格式,例如:

  • 在大屏幕上,底部动作条不是全宽的。(应用最大宽度以避免拉伸。)请参阅 Sheets: bottom 中的 Behavior
  • 在大屏幕上,按钮不是全宽的。请参阅 Buttons 中的 Behavior
  • 在大屏幕上,文本字段和方框不会拉伸至全宽。请参阅 Text fields 中的 Behavior
  • 小型编辑菜单或模态菜单不会覆盖整个屏幕,并会尽可能为用户保持上下文。请参阅菜单
  • 上下文菜单显示在用户所选择的内容旁边。请参阅菜单中的“上下文菜单”主题。
  • 侧边导航栏取代导航栏,以在大屏幕上提供更符合工效学的体验。请参阅侧边导航栏
  • 抽屉式导航栏更新为展开的侧边导航栏。请参阅抽屉式导航栏
  • 对话框更新为最新的 Material 组件。请参阅对话框
  • 图片以适当的分辨率显示,不会被拉伸或剪裁。
Touch_Targets T-Touch_Targets 触摸目标至少为 48dp。请参阅 Material Design 布局和排版指南。
Drawable_Focus T-Drawable_Focus 系统会为交互式自定义可绘制对象创建聚焦状态。自定义可绘制对象是指并非由 Android 框架提供的任何虚拟界面元素。如果用户可以与自定义可绘制对象交互,则当设备未处于触摸模式时该可绘制对象必须可聚焦,并且聚焦状态下的视觉指示必须清晰可见。

键盘、鼠标和触控板

Guideline ID Test IDs Description
Keyboard_Navigation T-Keyboard_Navigation 应用中的主要任务流支持键盘导航,包括 Tab 键和箭头键导航。请参阅构建无障碍功能更出色的应用
Keyboard_Shortcuts T-Keyboard_Shortcuts 应用支持常用操作(如选择、剪切、复制、粘贴、撤消和重做)的键盘快捷键。请参阅输入兼容性
Keyboard_Media_Playback T-Keyboard_Media_Playback 键盘可用于控制媒体播放;例如,空格键可播放和暂停媒体。
Keyboard_Send T-Keyboard_Send 键盘上的 Enter 键在通信应用中起到“发送”功能。
Context_Menus T-Context_Menus 用户可通过典型的鼠标和触控板右键点击(辅助鼠标按钮或辅助点按)行为来访问上下文菜单。
Content_Zoom T-Content_Zoom 用户可使用鼠标滚轮(结合按 ControlCtrl 键)和在触控板上做双指张合手势来缩放应用内容。
悬停状态 T-Hover_States 可操作的界面元素具有悬停状态(如果适用),可指示鼠标和触控板用户这些元素是交互式的。

测试

为确保应用已针对所有显示配置进行优化并能做出相应调整,请执行以下测试。

界面

Test ID Guideline IDs Description
T-Layout_Flow Responsive_adaptive_layouts,
UI_Secondary_Elements

在屏幕尺寸各异的设备(包括手机、折叠屏手机、小尺寸和大尺寸平板电脑,以及桌面设备)上运行应用。在设备上以多窗口模式运行应用。

验证应用布局是否能够响应并适应不同的屏幕尺寸和窗口大小。检查应用是否会:展开和收缩侧边导航栏,调整网格布局中的列数,将文本流入列等。观察界面元素的格式是否既美观又能发挥功能。

对于使用 activity 嵌入的应用,请测试 activity 是否会在大屏幕上并排显示、在小屏幕上堆叠显示。

T-Touch_Targets Touch_Targets 验证触摸目标是否能够针对所有屏幕尺寸和配置保持一致且易于触摸的尺寸和位置,并且不会被其他界面元素隐藏或遮挡。如需了解有关无障碍方面的信息,请参阅无障碍功能扫描仪
T-Drawable_Focus Drawable_Focus 在包含交互式自定义可绘制对象的每个应用界面上,验证是否可以使用外接键盘、方向键或其他支持界面元素聚焦的设备对可绘制对象进行聚焦。验证聚焦状态下的视觉指示是否清晰可见。如需了解相关信息,请参阅触摸模式

键盘、鼠标和触控板

Test ID Guideline IDs Description
T-Keyboard_Navigation Keyboard_Navigation 使用外接键盘的 Tab 键和箭头键在应用的可聚焦组件之间跳转。
T-Keyboard_Shortcuts Keyboard_Shortcuts 您可以使用外接键盘上的键盘快捷键执行选择、剪切、复制、粘贴、撤消和重做操作。
T-Keyboard_Media_Playback Keyboard_Media_Playback 使用外接键盘对媒体执行开始播放、停止播放、暂停播放、快退和快进操作。
T-Keyboard_Send Keyboard_Send 使用外接键盘的 Enter 键发送或提交数据。
T-Context_Menus Context_Menus 使用辅助鼠标按钮或触控板辅助点按功能来访问交互元素的上下文菜单。
T-Content_Zoom Content_Zoom 使用鼠标滚轮(结合 ControlCtrl 键)和在触控板上做双指张合手势来缩放内容。
T-Hover_States Hover_States 将鼠标光标或触控板光标悬停在可操作的界面元素上,激活元素的悬停状态。