更改Android中对讲的语音

更改Android中对讲的语音,第1张

概述当ImageView通过可访问性进行聚焦时,我正在尝试更改TalkBack宣布的文本.Android文档声明我们应该创建一个AccessibilityDelegate,并覆盖onPopulateAccessibilityEvent(我正在使用支持库,因为我也支持GingerBread)因此,我的代码如下:publicstaticvoidsetImageDelegate(Viewvi

当ImageVIEw通过可访问性进行聚焦时,我正在尝试更改TalkBack宣布的文本.

Android文档声明我们应该创建一个AccessibilityDelegate,并覆盖onPopulateAccessibilityEvent(我正在使用支持库,因为我也支持GingerBread)

因此,我的代码如下:

public static voID setimageDelegate(VIEw vIEw) {    AccessibilityDelegateCompat delegate = new AccessibilityDelegateCompat() {        @OverrIDe        public voID onPopulateAccessibilityEvent(VIEw host, AccessibilityEvent event) {            event.getText().add(event.getContentDescription() + ", image");        }    };    VIEwCompat.setAccessibilityDelegate(vIEw, delegate);}

当我在我的imagevIEw上调用此函数时,委托被设置,但未读取修改后的文本.它只是读取原始内容描述.我做错了什么或遗漏了一些关于辅助功能的东西?

单步执行代码,似乎添加了正确的文本,但仍然没有更改语音文本.

注意:上面是一个人为的例子,可以使用内容描述,但我试图弄清楚为什么它在我自定义视图上尝试之前不起作用.

解决方法:

在ICS及以上版本中,TalkBack在大多数情况下不使用辅助功能事件文本.相反,它会检查视图公开的AccessibilityNodeInfo的文本和内容描述.您需要覆盖onInitializeAccessibilityNodeInfo.

但是,在大多数情况下,您只想调用VIEw.setContentDescription.

在这种特殊情况下,您不应该设置任何东西,因为TalkBack处理语音控制类型和功能.我们强烈建议开发人员不要添加“按钮”或“图像”等描述.

总结

以上是内存溢出为你收集整理的更改Android中对讲的语音全部内容,希望文章能够帮你解决更改Android中对讲的语音所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1110698.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存