在内容提供商中搜索字符串的各个部分

时间:2016-11-09 02:15:49

标签: android android-contentprovider android-contentresolver android-cursorloader

您好我在onQueryTextChange内实施搜索视图,每次用户按下我要在我的数据库中搜索的字母时。 onQueryTextChange已实施且有效,我需要搜索帮助,例如:

String selection = AplicationContract.ArtistEntry.COLUMN_NAME + " LIKE ?";
String[] selectionArgs = { "MAX" };

            return new CursorLoader(getContext(),   
                    AplicationContract.ArtistEntry.CONTENT_URI,   
                    AplicationContract.ArtistEntry.PROJECTION,             
                    selection,                   
                    selectionArgs,                   
                    null);

如果我有一个名字" MAX"那会给我一个光标。在我的数据库中。但是如果我的数据库中的名字是" MAX"," MASON"," MEGAN"," SEAN"所以当我点击这封信时,MI想要在我的内容提供商中搜索任何带有字母M的名字,结果将是" MAX"," MASON"," MEGAN&# 34;

1 个答案:

答案 0 :(得分:0)

使用like语句时,您应该像这个演示一样编码:

select * from tb where c like "%M%"

只需了解如何在此网站上使用它:http://www.w3school.com

在这种情况下,你应该更正参数:

String[] selectionArgs = { "M"+"%" };