android 使用系统的 search


1.     在res/xml下面新建  searchable.xml


       下面是一个简单的配置:(复杂的配置网上百度)

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



2. 要调出系统的那个  浮动的搜索,直接调用 activity 的 onSearchRequested();将会出现  浮动搜索框

      前提条件是  必须在  这个activity的  AndroidManifest.xml 的里面 配置加上:

      <meta-data
                android:name="android.app.default_searchable"
                android:value=".SearchableActivity" />

    其中   android:value=".SearchableActivity"  这个是我们自定义的, 指向的是搜索结果的 activity

 

3.    要显示出搜索结果的activity,必须要拿到   搜索条件(即用户的输入)

    // Get the intent, verify the action and get the query
Intent intent = getIntent();
if (Intent.ACTION_SEARCH.equals(intent.getAction()))
{
query = intent.getStringExtra(SearchManager.QUERY);
// doMySearch(query);  这个是我们自己的方法
}

     前提条件是: 在 这个显示结果的activity的配置中,需要加上:

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

             <meta-data
                android:name="android.app.searchable"
                android:resource="@xml/searchable" />

    注意: android:resource="@xml/searchable"  这个就是我们最开始我们自己建立的 xml  名字最好不变



     

你可能感兴趣的:(android,百度,search,query,action,encoding)