Android辅助功能:点击按钮后读取隐藏文本



所以我有一个关于可访问性的要求,其中一个按钮需要在焦点时读出,然后在用户点击后读出另一个文本。

例如,一个"OK"按钮聚焦时应该读"ok";但是当用户点击它时,它应该读出一些其他文本。导航到另一个页面

有没有办法在Android实现这一点?

我没能在它周围找到任何东西。

您可以使用View#announceForAccessibility(CharSequence)进行一般公告-因此在您的OnClickListener中获得对某些View的引用(例如您的Button,不管它是什么)并调用它

就像它在文档中说的,这是一个方便的函数,它创建了一个非常通用的"某事被宣布没有特定的原因"事件——你可能想要给出更多的上下文,比如创建一个TYPE_VIEW_CLICKED事件。这可能对用户更有帮助(取决于可访问性服务如何处理它),并且可以提供更好的体验,因为读取的内容根据它是什么而确定优先级。我没有时间在这里深入讨论,但是如果你想的话,你可以研究一下


我也不确定这是否是你的意思,但以防万一——如果用户关注你的按钮,它应该说"[OK]按钮,双击[一些描述]">。括号中的位可以自定义,其余部分是UI中Button的标准描述。你不应该把它改成只说"OK"

这个可预测和一致的系统是有原因的,帮助部分视力和盲人准确地理解他们正在使用的应用程序发生了什么。有时听起来可能很笨拙,但它的本意是功能性的,而不是花哨的。所以我们不应该试图回避它,让它"听起来更好"。通过删除一些人真正需要的重要信息和背景。我不知道你是不是这个意思,但这总是值得一提的!

最新更新