尽量让应用中的可组合项更易于使用。您可以按照以下步骤来改进可组合项的无障碍功能:
- 描述可组合项
- 添加交互元素
- 处理复杂的界面
描述可组合项
如需描述可组合项,请使用 Modifier.semantics 声明其语义属性(例如 role,
label, state 或操作)。无障碍服务可以读取这些语义属性,并使用这些信息与界面进行交互并播报界面。
Role 属性尤为重要,因为它为无障碍服务提供了必要的上下文,以便播报组件的用途和预期交互。例如,假设有一个自定义图标,其行为类似于可点击的按钮。通过将其角色设置为 Role.button,您可以确保屏幕阅读器将其播报为交互式元素,而不是静态图片。
如需了解详情,请参阅语义。
添加交互元素
如需向可组合项添加交互元素,请使用 clickable 或
toggleable 修饰符。这些修饰符附带无障碍服务可以读取的内置语义属性。如需让复杂触摸屏
手势更易于使用,请使用 CustomAccessibilityAction。
如需了解详情,请参阅自定义操作。
处理复杂的界面
虽然 Compose 默认支持许多无障碍功能,但更复杂的界面可能需要更多自定义行为。您可以通过以逻辑方式构建界面层次结构并为无障碍服务提供逻辑读取顺序来遍历,让复杂的界面更易于使用。
以逻辑方式构建界面层次结构 :如果父可组合项包含多个子元素,您可以明确指定如何对这些元素进行分组或完全替换这些元素。如需了解详情,请参阅 合并和清除。
控制遍历顺序 :如果 Compose 的默认读取顺序不够,您可以手动控制屏幕阅读器导航界面元素的方式。如需了解详情,请参阅修改遍历顺序。
控制焦点 :对于键盘和方向键导航,您可以手动替换焦点遍历顺序。如需了解详情,请参阅更改焦点行为 和更改焦点遍历顺序。
其他资源
如需详细了解如何让界面更易于使用,请参阅以下其他资源: