问题标签 [talkback]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 如何知道 Android TalkBack 是否处于活动状态?
我正在开发一个使用 TalkBack 来引导人们完成它的应用程序。但是,在这些情况下,我希望在应用程序的布局中有一些细微的差异,以便导航更容易,并且还有额外的语音输出(使用 TextToSpeech)来帮助引导用户。
我的问题是,如果用户激活了 TalkBack,我只想要这些更改和额外的输出。
有没有办法知道是不是?我没有找到任何特定于直接访问 TalkBack 设置的内容,但我希望有某种形式的访问通用电话设置可以让我知道我需要什么。
提前致以问候和感谢。
android - 如何检查 JellyBean 中的 Talkback 是否处于活动状态
This question询问如何知道Android Talkback是否处于活动状态;直到果冻豆为止。从 Android 4.1 开始,这些步骤不再起作用,因为提到的光标是空的。
话虽如此,我想问是否有办法在 Jelly Bean 中进行相同的检查。
编辑 我试图搜索 TalkBack 代码,我在这里找到了它。为了检查 TalkBack 是否处于活动状态,我使用以下代码:
话虽如此,如果光标为空,我们如何知道 TalkBack 是否正在运行?
编辑 2 根据@JoxTraex 的建议,我现在发送一个广播来查询是否启用了 TalkBack:
现在我应该如何收到回复?
我尝试将以下内容添加到清单中,但我的接收器没有收到任何响应:
android - 使用 TalkBack 时,当 TextView 的内容发生更改时,提醒用户的首选方式是什么?
我有一个解锁屏幕,提示用户输入一个四位数的密码。如果用户错误地输入了他们的密码,TextView
则会显示以前不可见的内容和错误消息。此时,TalkBack 可以大声读出错误消息的内容。
通过一些实验,我意识到我可以设置android:focusableInTouchMode="true"
视图并以编程方式调用View#requestFocus()
. 这第一次有效,但由于视图已经具有焦点,因此在后续错误中失败。此外,一般来说,覆盖当前视图焦点似乎是个坏主意。
然后我尝试View#announceForAccessibility(java.lang.CharSequence)
在显示错误消息时调用。显然,如果视图当前不可见,此方法将静默失败。没问题,否则它工作得很好。但是,它仅在 API 级别 16+(Jelly Bean)中可用,这确实限制了它的实用性。由于 TalkBack 支持 API 级别 7+,因此必须有更好的解决方案。
我已经观看了 2011 年和 2012 年关于可访问性的 Google I/O 会议,但似乎都没有涵盖这个基本用例。最好的方法是什么?
编辑 1: TLDR;有没有办法强制View#announceForAccessibility(java.lang.CharSequence)
TalkBack 在引入Jelly Bean之前大声朗读一些文本?
android - Android 2.3.3 touch by explore
我正在为盲人社区开发应用程序。我想为用户提供一个选项,让用户通过在屏幕上刮擦手指来探索屏幕(通过触摸进行探索)。我找不到任何 api 来构建此功能。我正在尝试在 android 2.3.3(api 级别 10)中实现这一点。
我知道在 Android 4.1 中默认带有“通过探索触摸”功能的对讲,但我想将此功能提供给使用低于 android 4.1 设备的用户。任何想法表示赞赏。
android - 启用触控探索后,如何保持单指针手势?
我有一个捕获用户签名的自定义视图(约翰汉考克)。我希望我们的应用程序尽可能易于访问,因此我特别注意确保优化TalkBack和Explore-by-Touch的屏幕。由于Explore-by-Touch将所有一个手指手势更改为两个手指手势,因此它破坏了自定义签名视图。
我想做的是让Explore-by-Touch在悬停时宣布视图的内容描述,然后在用户双击时启用视图。这将允许他们像普通用户一样使用单个指针在视图顶部绘制。
我四处搜索,但很难找到有关 Android 可访问性库的详细文档。有任何想法吗?
android - 如何以编程方式禁用android中的无障碍服务
我正在为视障人士开发一个应用程序,并且我正在创建自己的声音,因此它不需要 android 无障碍服务的任何帮助。因此,一旦打开应用程序,我想禁用内置的可访问服务(如果启用)并退出或转到其他应用程序,我想再次启用它?
这可能吗?如果是这样怎么办?
android - 为什么 TalkBack 会忽略等于零的货币值?
有谁知道为什么 TalkBack 将文本“余额:0.00 美元”读取为简单的“余额”?它似乎忽略了等于零的值。我希望它被解读为“余额:零美元”。
我在 Android 项目上提交了一个错误,但想知道这里是否有人有一些见解。
android - 如何为应用程序的 TalkBack 设置不同的标签?
假设我有一个很棒的应用程序,因为它是一个很棒的应用程序,所以它必须有一个 Web2.0 的名称,所以我们称它为iFygs之类的东西(完全虚构,如果有人真的在某个地方有这个应用程序,对不起)。我想保持我对这两个词的品牌影响,就像上面一样。另一方面,我想在我可以到达的地方相对容易接近,我认为上面的内容清楚地被读为I Figs,而不是现在读到的那个听起来像eh-fi-gs
有没有办法像为 ImageButton 一样为 android 的活动提供 contentDescription。或者有没有办法专门为屏幕阅读器提供翻译,比如 res/values-en-rUS-sr/ 或类似的东西?或者这只是不可能做到,因为它实际上是我的家庭发射器正在这样做,所以我不知道它是如何工作的。
android - Android TalkBack 在 Webview 中错误地读取电话号码
在 WebView 中阅读电话号码时,我对 TalkBack 屏幕阅读器服务有点头疼,我似乎找不到解决方案。这是我正在读入 WebView 的一些 html 代码片段:
屏幕阅读器将此读取为“呼叫一到八百现在退出一到八百链接”。有没有办法强制它/信号以不同的方式阅读它?我需要以更自然的格式阅读它,即“八百”。
android - Android - 阻止 TalkBack 大声宣布 TextView 标题
我正在开发一个可访问的 android 应用程序,人们将使用 Explore by Touch 和 TalkBack 辅助功能服务来使用我的应用程序。
这是我的 Android XML 代码:
字符串.xml
TextView 显示标题“Forename”,EditText 允许我在表单字段中输入一些详细信息。我遇到的问题是,当我使用“触摸浏览”在屏幕上拖动手指时,TalkBack 会拾取 TextView 的标题并将其大声宣布为“Forename”。我希望 TextView 只显示文本而不提供任何声音反馈。
从上面的代码中可以看出,我已将 contentDescription 设置为 @null,但是当我的手指位于 TextView 上方时,TalkBack 仍会宣布“Forename”。
我还尝试在我的 Java 类中设置 contentDescription:
但是,我仍然遇到同样的问题。有没有其他方法可以将 contentDescription 设置为 null/empty 并防止 TalkBack 大声宣布它?
Java代码: