gpt4 book ai didi

Android:当 "focus"在特定 View 上时,如何在对讲(可访问性)期间中断?

转载 作者:行者123 更新时间:2023-11-29 01:35:23 25 4
gpt4 key购买 nike

所以,我有一个用 Java 编写的 Android 应用程序。我希望能够在视障人士的辅助功能选项中使用对讲功能。当用户在 Activity 中轻扫时,对讲“集中”在各种组件上,我希望能够知道这一点:

1) 如何知道它是否“专注于”某个组件(例如,textview)?

2) 当它“专注于”某个组件时,如何打断它播放我自己的音频文件然后返回并让对讲再次接管?

提前致谢!

----编辑

只是为了更清楚一点,以防你不熟悉对讲...

一旦用户启用对讲,它就会读出手机屏幕上的所有内容。如果用户想要选择一个应用程序,用户将继续向右、向左、向上或向下滑动,直到该应用程序名称被突出显示/聚焦并由对讲系统宣布。所以,我想知道何时突出显示特定的 TextView 。

最佳答案

答案A:

找到 View 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,通常认为让事情自动发生在焦点上是可访问性差的。与其弄清楚如何让可访问性框架做一些通常被认为无法访问的事情,不如不要去做:)。

关于Android:当 "focus"在特定 View 上时,如何在对讲(可访问性)期间中断?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28505063/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com