在SearchView小部件中输入某些文本时,软键盘会显示“开始”按钮而不是“搜索”按钮

时间:2014-10-05 06:10:06

标签: android android-actionbar android-softkeyboard searchview

我已按照this tutorial在操作栏中配置了searchview小部件。几乎一切都运行正常,除了软键盘没有显示正确的按钮。键盘没有显示“搜索”按钮,而是显示“开始”按钮,它还会带我进行另一项活动,我确信它不是正确的。

enter image description here

您是否知道如何让键盘显示“搜索”按钮?为什么我们必须将这些代码放在可搜索的活动中:

 <intent-filter>
        <action android:name="android.intent.action.SEARCH" />

提前致谢。

3 个答案:

答案 0 :(得分:21)

这很简单。但是,我不确定为什么默认情况下它没有显示右键:

无论如何,这是你需要做的事情:

在您的可搜索配置中添加以下行:

android:imeOptions="actionSearch"

所以你有类似的东西:

<?xml version="1.0" encoding="utf-8"?>
<searchable xmlns:android="http://schemas.android.com/apk/res/android" 
    android:label="@string/search_label"
    android:hint="@string/search_hint"
    android:imeOptions="actionSearch"/>

我确定应该解决您的问题,但正如我所提到的,我不确定为什么&#34;搜索&#34;按钮没有从一开始就显示出来。

答案 1 :(得分:7)

使用此

  searchview.setImeOptions(EditorInfo.IME_ACTION_SEARCH);

查看本教程,它将解决您对意图过滤器理解的第二个问题 Intent Filters

希望它对你有所帮助。

答案 2 :(得分:2)

尝试获取SearchView并调用以下方法:

SearchView searchView = (SearchView) menu.findItem(R.id.menu_search).getActionView();
searchView.setSubmitButtonEnabled(true);