无障碍功能对于创建每个人都可以使用的包容性应用至关重要。Compose 提供了一个构建无障碍 UI 的基础,使您的应用在任何地方都能为所有人使用。
关键概念
语义: 代表 UI 元素的含义以供无障碍服务使用的系统。这包括描述、状态和用户可以执行的操作等属性。
遍历: 无障碍服务(如 TalkBack)在屏幕上遍历元素的顺序。您可以自定义此顺序以获得更好的用户体验。
无障碍操作: 用户可以在 UI 元素上执行的特定操作,例如单击、滚动和关闭。您的应用会将它们传达给无障碍服务。
入门
Compose 无障碍功能模型和工具的基础是语义。有关更多信息,请参阅 Compose 中的语义 指南。
在开发您的应用时,请从一开始就牢记这些关键步骤以提高您的 Compose 应用的无障碍功能
- 考虑最小触摸目标尺寸: 确保可点击和交互式元素至少为 48dp。这符合 Material Design 无障碍功能指南。
- 添加点击标签: 使用
clickable
修饰符或semantics
修饰符描述点击行为,如果您无法直接访问clickable
。 - 描述视觉元素: 使用
contentDescription
参数以文本形式描述图标和图像。对于装饰性元素,将contentDescription
设置为null
。 - 定义标题: 使用
semantics
修饰符属性将元素标记为标题,以方便导航。 - 控制遍历顺序: 使用
isTraversalGroup
标记应一起读取的元素组。利用traversalIndex
在这些组中进一步自定义元素顺序。
有关更多信息,请参阅专门的 提高 Compose 无障碍功能的关键步骤 指南。
工具
- TalkBack: Google 为 Android 推出的屏幕阅读器。激活它以测试您的应用的语义对依赖辅助技术的用户的适用性。
- 布局检查器: 可视化和调试您的应用的语义树。
- Compose 测试 API: 编写与语义元素交互的测试以断言您的 Compose UI 的无障碍功能。
Codelab
要了解有关在您的 Compose 代码中支持无障碍功能的更多信息,请参加 Jetpack Compose 中的无障碍功能 Codelab。
其他资源
- 无障碍功能: 所有 Android 应用开发中通用的基本概念和技术
- 构建无障碍应用: 您可以采取的关键步骤,使您的应用更易于访问
- 提高应用无障碍功能的原则: 在努力使您的应用更易于访问时,请牢记的关键原则
- 测试无障碍功能: Android 无障碍功能的测试原则和工具