控件包含显示文本(text)、无障碍文本(accessibilityText)2个属性,其中,显示文本为用户界面上呈现的信息,无障碍文本为无障碍专有的朗读信息,不在界面上显示。屏幕朗读提取信息进行朗读时无障碍文本的优先级大于显示文本,即当无障碍文本不为空时,会朗读无障碍文本,否则朗读显示文本。
所以:
对于文本类控件,尽量使用显示文本来表达信息,使视障用户和视力健全用户可以获取到相同的信息。
对于文本类控件,如果除显示文本外,还额外提供了颜色等视觉效果为视力健全用户提供了更多信息的场景,可采用无障碍文本为视障用户提供更多的信息用于朗读。
对于非文本类控件,可采用无障碍文本为视障用户提供朗读信息。
accessibilityText( ) 设置无障碍文本。聚焦button时朗读效果为:"按钮, Accessibility text"。
export struct Rule_2_1_1 {
title: string = 'Rule 2.1.1';
shortText: string = 'Button';
longText: string = 'Accessibility text';
build() {
NavDestination() {
Column() {
Blank()
Button(this.shortText)
.accessibilityText(this.longText)
.align(Alignment.Center)
.fontSize(20)
Blank()
}
.width('100%')
.height('100%')
}
.title(this.title)
}
}
本文主要引用官方文档材料基API 12 Release