可调节的滑动条支持长按拖拽调节,调节步长通常允许小于取值范围的1%,适用于视频进度等精细控制场景。然而,长按拖拽操作对视障用户不够友好。为此,当屏幕朗读功能开启时,系统额外支持了通过上下扫动手势调节已聚焦的滑动条,每次调节后自动播报当前状态值(默认为百分比格式)。为避免连续调节时重复播报相同状态值,需通过accessibilityActionOptions配置滑动条的无障碍操作步数,确保每次调节步长大于或等于取值范围的1%。
如下示例实现一个可调节的滑动条,并指定无障碍操作的步数:
@Entry
@Component
export struct Rule_2_1_15 {
title: string = 'Rule 2.1.15';
@State scrollStep: number = 3;
build() {
NavDestination() {
Column() {
// 创建一个滑动条,最小值为0,最大值为100,当前值为10,步长为10。
Slider({
min: 0,
max: 100,
value: 10,
step: 10,
style: SliderStyle.OutSet
})
// 在屏幕朗读模式下,聚焦滑动条后执行上下扫动,滑动条调节步数为3。
.accessibilityActionOptions({ scrollStep: this.scrollStep })
.onChange((value: number, mode: SliderChangeMode) => {
console.info('value:' + value + 'mode:' + mode.toString());
})
}
.width('100%')
.height('100%')
}
.title(this.title)
}
}