SeekBar 值的 Android TalkBack

mug*_*528 7 android seekbar talkback android-accessibility

所以SeekBar我的应用程序中有一个,我正在使用 Android 的 TalkBack 功能。当SeekBar滚动时,设备提示“(机器人:视contentDescription),SeekBar控件,50%”。是否可以更改它,使其显示实际值(从 -4 到 +4),例如“SeekBar 控件,负 4”?

Sha*_*ert 8

如果您使用的是 SeekBar,我认为您正在某处跟踪该值。在我们的例子中,SeekBar 上方有一个 TextView,用于显示从 SeekBar 的进度派生的当前值。

我发现设置android:accessibilityLiveRegion="assertive"为 TextView 的属性非常有效。它会发出更新值的公告(因为 TextView 是更新的),然后是 SeekBar 的进度。

注意:设置android:accessibilityLiveRegionassertive对我们来说是合适的,因为用户快速更改 SeekBar 的进度所花费的时间更少。将其设置为polite通知每个增量,而将assertive未通知的增量跳过到最近的增量。

我在说什么的例子。


Jag*_*hal -4

是的,有可能。

你说它显示“SeekBar control, 50%”意味着你正在获得百分比。

因此,使用这个百分比来实现你的目标:

int minValue = -4;
int maxValue = 4;
int diff = maxValue - minValue;
int realProgress = minValue + (diff * percentage / 100);
Run Code Online (Sandbox Code Playgroud)

realProgress 就是您的答案。

希望对您有帮助!