我正在尝试为视障人士开发一个应用程序,我肯定会使用辅助功能
我正在尝试为用户设置欢迎词,而不让用户触摸任何应该仅在辅助功能模式下和 Activity 启动时播放的内容
我有一个欢迎用户的 Textview
,我已经在它的 contentDescription
中设置了消息
和我调用的 onCreate
方法
textView.announceForAccessibility("Welcome");
我也试过
textView.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_CLICKED);
textView.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED);
textView.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT);
几乎所有的 AccessibilityEvent 类型
都不起作用
我正在使用 android v7 在 nexus6p 上进行测试,同时启用了辅助功能
最佳答案
多亏了这个thread早些时候我找到了答案 我所做的只是添加了这段代码,它的效果非常好
AccessibilityManager manager = (AccessibilityManager) context
.getSystemService(Context.ACCESSIBILITY_SERVICE);
if (manager.isEnabled()) {
AccessibilityEvent e = AccessibilityEvent.obtain();
e.setEventType(AccessibilityEvent.TYPE_ANNOUNCEMENT);
e.setClassName(getClass().getName());
e.setPackageName(context.getPackageName());
e.getText().add("some text");
manager.sendAccessibilityEvent(e);
}
关于android - announceforaccessibility 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40243300/