尝试使您的 Android 应用可供所有人使用,包括具有无障碍功能需求的用户。
视力受损、色盲、听力受损、精细动作失能的人、以及有认知障碍和许多其他残疾状况的人会使用 Android 设备。如果您能够在开发应用时考虑无障碍功能,便可以改善用户体验,满足有无障碍功能需求的用户。
本页面介绍了应该依据哪些准则来实现无障碍功能的关键元素,以便所有人都可以更轻松地使用您的应用。如需获得有关如何让您的应用使用起来更没有障碍的更深入指导,请参阅改进应用无障碍功能要遵循的原则。
让文字更清晰易辨
对于应用中的每组文字,建议将色彩对比度(即文字颜色与文字后面的背景颜色之间感知到的亮度差异)设为高于特定阈值。确切阈值取决于文字的字体大小以及文字是否以粗体显示:
- 如果文字小于 18pt,或者如果文字为粗体且小于 14pt,请将色彩对比度至少设为 4.5:1。
- 对于其他所有文字,请将色彩对比度至少设为 3:1。
下图显示了文字与背景色彩对比度的两个示例:
如需查看应用中文字与背景的色彩对比度,请使用在线色彩对比度检查工具或无障碍功能扫描仪应用。
采用大且易用的控件
如果您的应用界面中的控件易于查看和点按,该界面便会更容易使用。我们建议每个互动界面元素的可聚焦区域(即触摸目标大小)至少为 48dpx48dp。越大越好。
为使给定界面元素的触摸目标足够大,应同时满足以下两个条件:
android:paddingLeft
、android:minWidth
和android:paddingRight
的值的总和应大于或等于 48dp。android:paddingTop
、android:minHeight
和android:paddingBottom
的值的总和应大于或等于 48dp。
这些内边距值允许对象的可见大小小于 48dpx48dp,同时仍具有建议的轻触目标大小。
以下代码段展示了一个具有建议的触摸目标大小的元素:
<ImageButton ... android:paddingLeft="4dp" android:minWidth="40dp" android:paddingRight="4dp" android:paddingTop="8dp" android:minHeight="32dp" android:paddingBottom="8dp" />
描述每个界面元素
应用中的每个界面元素都应包含描述该元素用途的说明。在大多数情况下,您可以在元素的 contentDescription
属性中添加此说明,如以下代码段所示:
<!-- Use string resources for easier localization. --> <!-- The en-US value for the following string is "Inspect". --> <ImageView ... android:contentDescription="@string/inspect" />
向应用的界面元素添加说明时,请牢记以下最佳实践:
请勿在内容说明中添加界面元素的类型。屏幕阅读器会自动读出元素的类型和说明。例如,如果选择某个按钮会导致应用中发生“提交”操作,则将该按钮的说明设为
"Submit"
,而非"Submit button"
。每条说明都应该是独一无二的。这样,当屏幕阅读器用户遇到重复的元素说明时,他们便能正确地识别出焦点现在位于之前已聚焦的元素上。特别是,视图组中的每一项(如
RecyclerView
)都必须具有不同的说明。每条说明都必须反映给定项所特有的内容,如位置列表中某个城市的名称。如果您的应用的
minSdkVersion
为16
或更高的值,您可以将仅用于装饰效果的图形元素的android:importantForAccessibility
属性设为"no"
。
其他资源
如需详细了解如何让您的应用使用起来更没有障碍,请参阅下面列出的其他资源: