如何在本地应用程序中使用SearchManager?

时间:2011-01-17 07:08:14

标签: android android-searchmanager

大家好,

我有一个有listview的活动。我需要根据人们的意见来改进列表视图。

我尝试按照主题http://developer.android.com/guide/topics/search/search-dialog.html来实现它。但问题是我只能在按下搜索按钮后从系统获取默认搜索栏(可以搜索联系人或浏览器中的任何文字)。

所以我的问题是如何在本地实施搜索?

提前谢谢。


在可搜索的活动ListActivity中:

@Override
public boolean onSearchRequested(){
    Bundle bundle=new Bundle();
    bundle.putString("data", "data");
    startSearch(null, false, bundle, false);
    return true;
}

在清单中:

<searchable xmlns:android="http://schemas.android.com/apk/res/android"
android:label="DiseaseListActivity"
android:hint="Search Diseases..." 
android:searchMode="showSearchLabelAsBadge"
android:voiceSearchMode="showVoiceSearchButton|launchRecognizer"
android:voiceLanguageModel="free_form"
android:voicePromptText="Please Speak"

/&GT;

searchable.xml:

<searchable xmlns:android="http://schemas.android.com/apk/res/android"
android:label="DiseaseListActivity"
android:hint="Search Diseases..." 
android:searchMode="showSearchLabelAsBadge"
android:voiceSearchMode="showVoiceSearchButton|launchRecognizer"
android:voiceLanguageModel="free_form"
android:voicePromptText="Please Speak"/>

1 个答案:

答案 0 :(得分:1)

问题解决了,在searchable.xml中,我们不能使用静态字符串,相反,我们应该使用像

这样的引用
android:label="@string/app_name"

谢谢大家。

克里斯