无障碍-语音反馈TalkBack

时间:2025-03-10 09:22:12

 1、判断TalkBack开关状态

AccessibilityManager manager = (AccessibilityManager)context.getSystemService("accessibility");
if (null != manager) {
    return manager.isTouchExplorationEnabled();
}
isTouchExplorationEnabled()

Returns if the touch exploration in the system is enabled.

返回true,说明TalkBack是开启状态;返回false,则是关闭状态。

2、控件语音朗读

AccessibilityEvent e = ();
e.setEventType(AccessibilityEvent.TYPE_ANNOUNCEMENT);
(().getName());
(());
().add(text);
AccessibilityManager manager = (AccessibilityManager)context.getSystemService("accessibility");
if (null != manager) {
    manager.sendAccessibilityEvent(e);
} 

TYPE_ANNOUNCEMENT

Represents the event of an application making an announcement. 

Value: 16384

3、控件内容描述,即开启TalkBack时默认的朗读文本
xml:android:contentDescription
代码:setContentDescription 和 getContentDescription