当前位置: 首页 > 知识库问答 >
问题:

以编程方式使 TalkBack 读取按钮内容描述

仲孙超
2023-03-14

我有一个按钮,有两种状态,开始和停止。在使用对讲的可访问性模式下,当用户双击按钮时,我会将按钮的文本更改为停止,因此我必须以某种方式对对讲说这发生了。我通过以下操作成功地将焦点移除并读取到按钮:

button.performAccessibilityAction(AccessibilityNodeInfo.ACTION_CLEAR_ACCESSIBILITY_FOCUS, null);

// This works for the focus but doesn't make TalkBack speak.                           button.performAccessibilityAction(AccessibilityNodeInfo.ACTION_ACCESSIBILITY_FOCUS, null);

// Needed for TalkBack to speak.
button.performAccessibilityAction(AccessibilityNodeInfo.ACTION_SELECT, null);

这样做的问题是,TalkBack只会读取内容描述,而不会说“双击激活”,当您手动选择按钮时,会阅读该内容。

以下操作无效:

button.requestFocus();
button.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED);
button.clearFocus();

button.sendAccessibilityEventAccessibilityEvent.TYPE_VIEW_ACCESSIBILITY_FOCUS_CLEARED

也许有人暗示我错过了什么?

共有1个答案

融伯寅
2023-03-14

在单击列表中,使用宣布可访问性

 类似资料:
  • 问题内容: 如何以编程方式添加一个单击按钮即可执行操作的按钮?将使用什么代码? 我习惯在情节提要中添加一个按钮,然后从那里运行IBAction。 问题答案: 在SpriteKit中添加按钮并响应其点击并不像在UIKit中那样容易。基本上,您需要创建某种类型的对象,以绘制您的按钮,然后检查场景中记录的触摸是否在该节点的范围内。 一个非常简单的场景,中心只有一个红色矩形作为按钮,看起来像这样: 如果您

  • 问题内容: 我有2个视图控制器,应根据用户输入进行交换。因此,我想根据从文本文件获得的输入以编程方式切换视图。 关于如何以编程方式单击按钮或使用输入加载特定ViewController的任何帮助? 问题答案: 要以编程方式触发事件,您需要致电 - 迅捷3

  • 我在https://stackoverflow.com/a/20323723/3888000中搜索如何减少按钮内的填充,发现我应该在xml文件中将按钮的最小高度设置为0dp。是的,它对我有效。 问题是:我想以编程方式创建按钮,而setMinimumHeight(1)和setMinHeight(1)都没有工作。怎么做? 顺便问一下,这两种方法有什么不同? 谢谢!

  • 报告不能全部以编程方式进行,因为它们的布局会不断发生变化,我们不能每次发生这种变化时都更新我们的软件。

  • 我想通过编程设置单选按钮的色调。在xml中,有一个名为“buttonint”的属性来完成这项工作。但在程序中,我找不到任何方法来设置单选按钮的色调或颜色。有什么方法可以做到这一点吗?

  • 我如何以编程方式单击通知操作按钮(另一个应用程序通知,而不是我的)?我可以使用 ;button.performClick()方法单击普通按钮。我有可访问性服务来监听传入的通知(和通知服务监听到Android5.0+),所以,有没有办法做到这一点? 例如,单击“打开电池保护程序”或“实用地共享/删除”