gpt4 book ai didi

android - SearchView 可以同时具有语音搜索按钮和键盘语音输入吗?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:13:46 27 4
gpt4 key购买 nike

我正在为我的应用程序的搜索界面添加语音搜索功能。目前,它看起来像这样:

initial search interface

为了添加语音搜索,我在我的可搜索配置中添加了一个 voiceSearchMode,它在 SearchView 中添加了一个按钮来触发语音对话。界面现在看起来像这样:

enter image description here

但是正如您在键盘的 , 键上看到的那样,麦克风按钮现在已禁用。我找不到任何关于如何再次打开它的文档,唯一相关的问题解释了如何明确禁用它。

是否可以在 SearchView 中同时拥有系统的语音搜索对话框键盘的语音输入?

最佳答案

我知道这是一个老问题,但无法通过 Google 找到答案,所以我想在这里添加我找到的内容。查看 SearchView 的源代码后,我在 setSearchableInfo 方法中找到了以下代码:

if (mVoiceButtonEnabled) {
// Disable the microphone on the keyboard, as a mic is displayed near the text box
// TODO: use imeOptions to disable voice input when the new API will be available
mSearchSrcTextView.setPrivateImeOptions(IME_OPTION_NO_MICROPHONE);
}

然后我做的是创建一个扩展 SearchView 的类,覆盖 setSearchableInfo 方法并在调用 super.setSearchableInfo 之后添加以下内容:

SearchAutoComplete mSearchSrcTextView = findViewById(android.support.v7.appcompat.R.id.search_src_text);
mSearchSrcTextView.setPrivateImeOptions("");

现在我在键盘上有一个麦克风,在 SearchView 中有一个。

编辑:如果您在菜单中使用它,请不要忘记引用您的类。

app:actionViewClass="your.searchview.class"

关于android - SearchView 可以同时具有语音搜索按钮和键盘语音输入吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47269200/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com