无障碍
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 = AccessibilityEvent.obtain(); e.setEventType(AccessibilityEvent.TYPE_ANNOUNCEMENT); e.setClassName(view.getClass().getName()); e.setPackageName(context.getPackageName()); e.getText().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