重复说明

背景

无障碍服务(如屏幕阅读器)的用户依靠文字标签与界面进行互动。

一般情况下,屏幕阅读器用户会在项之间移动焦点,随着焦点的移动聆听各项的标签。如果界面中同一个文字标签对应多个元素,用户可能难以区分不同的元素。

实现

在实现界面时,请仔细考虑界面中的文字标签。每个元素均应拥有独一无二的文字标签,用来说明其视觉含义、用途或相关联的操作。

请特别留意界面中重复使用的布局。例如,ListViewRecyclerView 中用作行的布局通常会重复出现。在这种情况下,重复的标签应该包含更多文字,为相应项的说明提供更多识别信息或上下文。

设计

每个可点击元素的用途都应该明确无误,并可让用户预见到选择可操作元素后会执行的操作。

在为界面元素定义文字标签时:

  • 确保每个元素的标签都独一无二。
  • 确保重复内容(例如重复列表行中的项)的标签包含修饰或进一步说明所对应项的文字。例如,如果界面包含多个“删除”按钮,请在标签中加入额外的文字,例如“删除第 4 项”。

测试

要手动验证应用的界面是否包含重复说明,请执行以下操作:

  1. 开启 TalkBack。
  2. 打开应用。
  3. 使用线性导航手势将无障碍焦点移动到屏幕上的各个元素。
  4. 如果 TalkBack 针对多项内容朗读同样的说明,则界面可能包含重复说明。

Android 的自动化测试工具能够检测出重复说明。不妨考虑使用 Android 版无障碍功能扫描仪对设备上的应用进行人工测试。要实现自动化测试,请在 EspressoRobolectric 中开启无障碍检查功能。