推荐安卓开发神器(里面有各种UI特效和android代码库实例)
1.声明处理搜索的Activity
<meta-data android:name="android.app.default_searchable" android:value=".OnSearchAppsList" />
2.Activity定义
<activity android:name=".OnSearchAppsList"
android:configChanges="orientation|keyboardHidden|navigation"
android:label="@string/Market">
<intent-filter>
<action android:name="android.intent.action.SEARCH" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<meta-data android:name="android.app.searchable" android:resource="@xml/searchable" />
</activity>
3.searchable.xml定义
<?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" />
4.调用 Search功能
onSearchRequested();
5.可重写onSearchRequested()函数,为搜索框填充初值
@Override
public boolean onSearchRequested() {
startSearch(mStrSearchIndex, false, null, false);
}
5.截获 参数
getIntent().getStringExtra(SearchManager.QUERY);
这后即可以随意处理搜索请求了.
如果需要回到之前页面,可在AndroidManifest.xml 的当前Activity中配置属性
android:launchMode="singleTask"
并在程序中重写 NewIntent() 函数,通过
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
String temptest = intent.getStringExtra(SearchManager.QUERY);
}
获取到搜索框里的值。
附件是别人做的一个例子程序。