如何在搜索栏中发送信息

时间:2013-11-29 15:51:20

标签: android searchview

我试图将一个搜索栏放到我的应用程序中,我到目前为止输入了我想搜索的内容,但我如何“发送”给定的信息? 问题是我可以输入内容,但是没有按钮可以开始搜索,我在应用程序构建方面没有太多经验......

菜单:

public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.klassenliste, menu);
    SearchManager searchManager =
            (SearchManager) getSystemService(Context.SEARCH_SERVICE);
     SearchView searchView =
             (SearchView) menu.findItem(R.id.search).getActionView();
     searchView.setSearchableInfo(
             searchManager.getSearchableInfo(getComponentName()));

    return true;
}

xml文件 searchable.xml

<searchable xmlns:android="http://schemas.android.com/apk/res/android"
    android:label="@string/app_name"
    android:hint="@string/search_hint" />

和一个菜单文件: klassenliste.xml

<item
    android:id="@+id/action_settings"
    android:orderInCategory="100"
    android:showAsAction="never"
    android:title="@string/action_settings"/>
<item android:id="@+id/search"
    android:title="@string/search_title"
    android:icon="@drawable/ic_btn_search"
    android:showAsAction="collapseActionView|ifRoom"
    android:actionViewClass="android.widget.SearchView"></item>

1 个答案:

答案 0 :(得分:0)

搜索查询的实际“发送”是在Android系统本身的帮助下完成的。也就是说,您仍然需要指定要启动哪个活动来处理和显示搜索查询。

假设SearchActivity是您展示/处理搜索查询的目标活动。 查看我的回答here 。此外,您的onCreateOptionsMenu(Menu menu)方法似乎缺少重要的代码行。请参阅the docs。如果正在为Android 3.0+开发并使用SearchView,请使用ActionBar