当前位置: 代码迷 >> Android >> Android开发——Android搜寻框架(二)
  详细解决方案

Android开发——Android搜寻框架(二)

热度:24   发布时间:2016-05-01 16:22:22.0
Android开发——Android搜索框架(二)

1.创建搜索建议提供者

Android已经为我们创建了一个默认的,我们只需要继承 SearchRecentSuggestionProvider 就稍做修改就可以了。

见代码:

   1: import android.content.SearchRecentSuggestionsProvider;
   2:? 
   3: /**
   4:  * 搜索提示
   5:  * 
   6:  * @author Hanguo
   7:  * http://t.sina.com.cn/halzhang
   8:  * @version 2011-1-5上午11:51:39
   9:  */
  10: public class SearchSuggestionsProvider extends SearchRecentSuggestionsProvider {
  11:     //记住这个哦
  12:     public final static String AUTHORITY = "searchprovider";
  13:? 
  14:     public final static int MODE = DATABASE_MODE_QUERIES;
  15:? 
  16:     public SearchSuggestionsProvider() {
  17:         setupSuggestions(AUTHORITY, MODE);
  18:     }
  19: }

2.配置searchable.xml

   1: <?xml version="1.0" encoding="utf-8"?>
   2: <searchable xmlns:android="http://schemas.android.com/apk/res/android"
   3:     android:label="@string/search_label" 
   4:     android:hint="@string/search_hint"
   5:     android:searchSettingsDescription="@string/search_settings_description"
   6:     android:searchSuggestAuthority="searchprovider"
   7:     android:searchSuggestIntentAction="android.intent.action.SEARCH"
   8:     android:searchSuggestThreshold="1"
   9:     android:includeInGlobalSearch="true"
  10:     android:searchSuggestSelection=" ?"
  11:     >
  12: </searchable>
参数说明:
android:searchSuggestAuthorith
此属性的值就是SearchSuggestAuthorith中的AUTHORITH了。
android:searchSuggestIntentAction
此属性定义了当我们选中搜索提示的内容时发生的目的动作。
android:searchSuggestThreshold
此属性定义了至少输入几个字符时才会弹出提示
android:includeInGlobalSearch
是否将内容加入android的全局搜索。true,加入。
android:searchSuggestSelection
定义搜索时参数的占位符
?
  相关解决方案