在我的 android 应用程序中,我想搜索以特定字符开头的联系人。 到目前为止,我的选择看起来像这样
mSelectionClause = NAME + " LIKE \"" + name + "%\"";
选择所有以特定字符开头的联系人,它工作正常,直到我开始寻找以 ł 开头的联系人,然后我只能选择以小 ł 开头的联系人,所有以 Ł 开头的联系人都不会显示。
我尝试像以前那样添加 COLLATE LOCALIZED
进行排序,所以现在我的选择是
mSelectionClause = NAME + " COLLATE LOCALIZED LIKE \"" + name + "%\"";
但我仍然只能用我写的字母(无论大小)取结果。
在前。我有这样的记录
łukasz
Łuki
ałuki
当我搜索以“ł”开头的记录时,我只得到
łukasz
但我想同时获得 łukasz 和 Łuki
最佳答案
您应该将两个值转换为相同的大小写
mSelectionClause = "lower(" + NAME + ") LIKE \"" + name.toLowerCase() + "%\"";
或者...
mSelectionClause = NAME + " LIKE \"" + name + "%\" COLLATE NOCASE";
关于android - 带有变音符号的名称的游标查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28436387/