android利用onSearchRequested()调用内部搜索ui组件
2010-04-29 00:18
417 查看
android利用onSearchRequested()调用内部搜索ui组件
By 王军, 2010年04月21日 1:29 上午android自带内部搜索ui组件,在实际的activty中,要调用搜索组件,完成输入内容然后进行搜素处理,得到相应的数据到相应的activty中显示数据。
下面是搜素的截图:
主要实现代码:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button button1 = (Button) findViewById(R.id.button);
button1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
onSearchRequested();
}
});
}
@Override
public boolean onSearchRequested() {
Bundle appDataBundle = new Bundle();
appDataBundle.putString("demo_key", "dddd");
startSearch("搜索", false, appDataBundle, false);
return true;
}
重要配置:AndroidManifest.xml文件
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".SearchManager"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<meta-data android:name="android.app.default_searchable"
android:value=".ResultActivty" />
</activity>
<activity android:name=".ResultActivty"
android:label="@string/search_query_results">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.SAMPLE_CODE" />
</intent-filter>
<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>
</application>
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"
android:searchMode="showSearchLabelAsBadge"
android:voiceSearchMode="showVoiceSearchButton|launchRecognizer"
android:voiceLanguageModel="free_form"
android:voicePromptText="@string/search_invoke"
android:searchSuggestAuthority="com.example.android.apis.SuggestionProvider"
android:searchSuggestSelection=" ? "
/>
源代码:http://easymorse-android.googlecode.com/svn/trunk/android.searchmanager
相关文章推荐
- Android中onInterceptTouchEvent、dispatchTouchEvent及onTouchEvent的调用顺序及内部原理
- 在android中使用AsyncTask从网络中下载图片,但是调用了execute方法后,最后不执行onPostExcute方法
- 事件机制(2)--Android onTouchEvent, onClick及onLongClick的调用机制
- android中利用webview调用网页上的js代码 Java代码调用js并传递参数
- Android onTouchEvent, onClick及onLongClick的调用机制
- android onNewIntent 为什么要在onNewIntent的时候要显示的去调用setIntent
- Android onTouchEvent, onClick及onLongClick的调用机制
- [android] 代码注册广播接收者&利用广播调用服务的方法
- Android -- service 利用广播调用服务的方法
- 【Android解决方案】GridView第一次选中不调用onItemSelected()的解决办法
- Android onTouchEvent, onClick及onLongClick的调用机制
- Android Touch系统简介(二):实例详解onInterceptTouchEvent与onTouchEvent的调用过程
- android 系统回调onSizeChange, onMeasure, onLayout调用时机
- [Android] RadioGroup调用check(id)方法时,onCheckedChanged被执行多次
- android相机如何只显示处理后的图像以及这里onPreviewFrame不被调用的原因
- Android onTouchEvent, onClick及onLongClick的调用机制
- Android onTouchEvent, onClick及onLongClick的调用机制
- 【Android实战】----调用startActivityForResult()后,onActivityResult()立即执行的问题
- Android UI 之 onTouchEvent, onClick及onLongClick的调用机制
- Android自定义控件系列八:详解onMeasure()(二)--利用onMeasure测量来实现图片拉伸永不变形,解决屏幕适配问题