
我有一个搜索对话框,需要从数据库启用建议,如http://developer.android.com/images/search/search-suggest-custom.png所示.
当我单击 *** 作栏菜单项时,我的搜索对话框将显示在顶部.当用户开始输入某些文本时,它应该搜索数据库并相应地显示建议.截至目前,我有一个搜索对话框,但当用户键入某些文本时,不会显示任何建议.
我的内容提供商:
public class MyCustomSuggestionProvIDer extends ContentProvIDer { sqliteDatabase db; sqlitequeryBuilder qb; String sqltables = "countrIEs"; @OverrIDe public int delete(Uri uri, String selection, String[] selectionArgs) { return 0; } @OverrIDe public String getType(Uri uri) { return null; } @OverrIDe public Uri insert(Uri uri, ContentValues values) { return null; } @OverrIDe public boolean onCreate() { return false; } public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) { MyDatabase myDB = new MyDatabase(getContext()); db = myDB.getReadableDatabase(); Cursor c = null; if (selectionArgs != null && selectionArgs.length > 0 && selectionArgs[0].length() > 0) { qb = new sqlitequeryBuilder(); String[] sqlSelect = { "name" }; qb.settables(sqltables) c = qb.query(db, null, selection, selectionArgs, null, null, null); c.movetoFirst(); } else { return null; } return c; } @OverrIDe public int update(Uri uri, ContentValues values, String selection, String[] selectionArgs) { return 0; }}我的清单:
<application androID:allowBackup="true" androID:icon="@drawable/ic_launcher" androID:label="@string/app_name" androID:theme="@style/theme.Visa" > <provIDer androID:name="com.m7.visa.contentprovIDer.MyCustomSuggestionProvIDer" androID:authoritIEs="com.m7.visa.contentprovIDer.MyCustomSuggestionProvIDer" > </provIDer> <activity androID:name="com.m7.visa.MainActivity" androID:label="@string/app_name" > <intent-filter> <action androID:name="androID.intent.action.MAIN" /> <category androID:name="androID.intent.category.LAUNCHER" /> </intent-filter> <intent-filter> <action androID:name="androID.intent.action.SEARCH" /> </intent-filter> <Meta-data androID:name="androID.app.searchable" androID:resource="@xml/searchable" /> </activity></application>我的可搜索配置:
<?xml version="1.0" enCoding="utf-8"?><searchable xmlns:androID="http://schemas.androID.com/apk/res/androID" androID:hint="hint..." androID:label="@string/app_name" androID:searchSuggestAuthority="com.m7.visa.contentprovIDer.MyCustomSuggestionProvIDer" androID:searchSuggestIntentAction="androID.intent.action.VIEW" androID:searchSuggestSelection=" ?" ></searchable>知道我哪里错了吗?
解决方法:
尝试删除androID行的空格:searchSuggestSelection =“?” >
到androID:searchSuggestSelection =“?” >
总结以上是内存溢出为你收集整理的Android – 带自定义建议的搜索对话框全部内容,希望文章能够帮你解决Android – 带自定义建议的搜索对话框所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)