我的应用程序使用TTS(文本到语音)引擎,我遇到的冲突是可访问性Talkback设置覆盖了TTS试图说的任何内容。如果使用我的应用程序,我想禁用电话的对讲选项。是否有某种许可来处理这个?我找不到任何东西。 最佳答案 我知道已经晚了,但几天前我遇到了同样的问题。如果您想使用自己的TTS引擎“覆盖”TalkBack,您只需添加:android:importantForAccessibility="no"到布局中的每个View。现在您可以在Activity中调用TtsSpeak()方法。重要提示:这不会关闭TalkBack应用程序,但它会
Lastpass如何管理这个?!AccessibilityNodeInfo有一个setText()方法,但我觉得这是一个转移注意力的文档状态,注意:不能从AccessibilityService调用。此类在交付给AccessibilityService之前是不可变的。前段时间另一个用户也问过类似的问题,但最近对LastPass的更新证明这确实是可能的。SettextinAccessibilityNodeInfo 最佳答案 我找到了比ACTION_PASTE更好的解决方案。我觉得ACTION_PASTE会造成延迟并且无法正常工作。AC
我有一个字符串“9039662543”,当回话打开时,这个字符串在4.3android设备中被读作“九百万....”,在4.3设备以上它工作正常,读作“九零三。..”。我应该怎么做才能解决这个问题? 最佳答案 我假设这是一个电话号码?我不知道,因为没有格式。这是问题的核心。有多种修复方法。答:别管它。TalkBack用户可以选择按View、段落、句子、单词、字符等来解析元素。如果用户无法通过上下文判断它是电话号码,则需要更多上下文。数字本身没问题!B:格式化更好。(903)-966-2542与9039662543,在没有任何附加上下
我们希望发送一个未链接到View的辅助功能事件(将由TalkBack等接收)。例如,当AsyncTask完成时,我如何发送可访问性事件(例如对讲说“数据已下载”)? 最佳答案 如果AccessibilityEvent.getSource()返回null,当前版本的TalkBack似乎会忽略通知,因此您最好使用Toast。这样做的额外好处是可以向用户提供一致的反馈,无论他们是否使用TalkBack。Toast.makeText(context,/**sometext*/,Toast.LENGTH_SHORT).show();不过,通常
在我的应用程序中,我在底部有广告,在辅助功能(对讲)模式下我不希望包含广告。为此,我已将此AdView及其父级设置为IMPORTANT_FOR_ACCESSIBILITY_NO和focusable=false,但在应用启动时它不受尊重(启用对讲)第一个获得焦点的项目是这个广告。我请求聚焦到所需的项目,但广告仍然聚焦,我怎样才能使这个广告不可聚焦? 最佳答案 当您将importantForAccessibility设置为no时,您只是隐藏了单个View。您想要找到广告的布局,并隐藏它及其所有后代。android:importantFo
我已打开辅助功能,我的设备会在我四处导航时说话。我有一个自定义的seekbar并实现了以下内容:onTouchEvent摘录:...caseMotionEvent.ACTION_MOVE:getParent().requestDisallowInterceptTouchEvent(true);setTouchAngle(pointToAngle(touchX,touchY));score=getScoreFromAngle(angleStart,touchAngle);if(onScoreSetListener!=null){onScoreSetListener.onScorePoll
如何设置一个contentDescription以便在我的对话框打开时由无障碍服务读取?我目前正在使用带有自定义布局的对话框来显示阻塞的加载屏幕,并且口语contentDescription是“Alert”,这在这种情况下是不合适的。谢谢;) 最佳答案 您可以创建子类Dialog并覆盖dispatchPopulateAccessibilityEvent以提供您自己的辅助功能文本。这是一个例子:@OverridepublicbooleandispatchPopulateAccessibilityEvent(AccessibilityE
我正在开发一个简单的应用程序,它采用Activities和Fragments结构,要求之一是使其易于访问,因此我完成了所有内容描述、导航、焦点等。它工作得很好,除了fragment,如果有一个加载fragment的Activity,对讲读取它的内容,然后用户点击一些东西和一个可以添加到堆栈顶部的细节fragment。FragmentTransactionft=getSupportFragmentManager().beginTransaction();audios=AudiosListFragment.newInstance(params);ft.add(R.id.audios_fra
我有一个CheckedTextBox,其文本由两个SpannableString组成,其中一个是URLSpan。我的问题是,如何让用户可以在每个跨度内移动可访问性焦点,最终将焦点放在URLspan本身?setMovementMethod和setLinksClickable似乎对我不起作用。SpannableStringBuilderbuilder=newSpannableStringBuilder();SpannableStringlabel=newSpannableString(getString(R.string.label));label.setSpan(newForegroun
目标是获得可以即时交互的View(可以立即点击,然后会发生一些事情)。如果View通常可见且可点击,但悬停在另一个View/菜单/侧面板上,则应将其省略。VoiceAccess去做。而且它似乎使用了AccessibilityAPI。Googlemap中的底部菜单就是一个完美的例子。当它展开时,下方的“沿路线搜索”按钮仍然可见,但应用程序未突出显示它。那我们有什么?有一个流AccessibilityEvent.最有用的是AccessibilityEvent.TYPE_WINDOW_CONTENT_CHANGED,这样我们就可以在有事情发生时得到通知。与getSource()我们可以获得A