装饰性的控件一般为分隔符、占位符和美化图标等,这类图形元素仅仅起到调整页面布局或装饰性效果,并不会向用户传达有效的信息或提供交互功能,删除后不影响指引用户体验。可以设置控件的无障碍是否可见的属性将其设置对无障碍不可见,这样在屏幕朗读模式下控件就不会获取焦点和朗读。
accessibilityGroup(true) 用于多个组件的组合,组合内的默认没有焦点。
.accessibilityLevel("no")用于组件设置不可聚焦,不被无障碍感知。
例如:以下代码同时显示“Broadcast”和“No broadcast”消息,但当ScreenReader处于“打开”状态时,message可被聚焦,但message1将不被聚焦。
@Component
export struct Rule_2_1_3 {
title: string = 'Rule 2.1.3'
@State message: string = 'Broadcast';
@State message1: string = 'No broadcast';
build() {
NavDestination() {
Column() {
Row() {
Text(this.message)
.fontSize(40)
.fontWeight(FontWeight.Bold)
.fontColor(Color.Blue)
.margin({
left: 40
})
}
.width('100%')
.height('50%')
Row() {
Text(this.message1)
.fontSize(40)
.fontWeight(FontWeight.Bold)
.fontColor(Color.Grey)
.margin({
left: 40
}).accessibilityLevel("no") // use for component
}
//.accessibilityGroup(true)
//.accessibilityLevel("no-hide-descendants") // use for container
// 可以使用这两行代替28行的accessibilityLevel("no")
.width('100%')
.height('50%')
}
.height('100%')
}
.title(this.title)
}
}
本文主要引用官方文档材料基API 12 Release