所以,我有一个用Java编写的Android应用程序。我希望能够在可访问性选项中使用对讲机,用于那些视力受损的人。当用户在活动中滑动时,对讲机“聚焦”于各种组件,我想知道这一点:
1)如何知道它是否“聚焦”于某个组件(例如,文本视图)?
2)当它“聚焦”在某个组件上时,如何中断它来播放我自己的音频文件,然后返回并让对讲机再次接管?
提前谢谢你!
-编辑
如果你不熟悉对讲机的话.
一旦用户启用了对讲机,它就会读出手机屏幕上的所有内容。如果用户希望选择一个应用程序,则用户将一直向右、向左、向上或向下滑动,直到该应用程序名称被突出显示/聚焦并由对讲机宣布为止。因此,我想知道何时突出显示特定的文本视图。
发布于 2015-02-24 18:21:56
答A:
查找视图View.AccessibilityDelegate。
然后重写以下方法:
@Override
public boolean onRequestSendAccessibilityEvent(View child, AccessibilityEvent event) {
if(event.getEventType() == TYPE_VIEW_ACCESSIBILITY_FOCUSED) {
/*do your stuff here*/
} else {
return super.onRequestSendAccessibilityEvent(child, event);
}
}
您希望查找类型为TYPE_VIEW_ACCESSIBILITY_FOCUSED
的事件。
答B:根据WCag 2.0准则3.2,人们通常认为,让事情自动发生在焦点上的可访问性很差。不要弄清楚如何让可访问性框架做一些通常被认为是不可访问的事情,而只是不要去做:)。
https://stackoverflow.com/questions/28505063
复制相似问题