gpt4 book ai didi

安卓联系人 : Incorrect localized collation/sorting

转载 作者:太空宇宙 更新时间:2023-11-03 10:56:08 24 4
gpt4 key购买 nike

这是我的问题:我正在编写一个替代的联系人应用程序,该应用程序指定用于许多不同的语言和字母。当以我自己的语言(瑞典语)查询名称时,使用变音字符的名称对我来说以不合逻辑的方式排序,但我想对 unicode 来说是合乎逻辑的:

应该是/瑞典式:A, B, C, ..., Z, Å, Ä, Ö。

查询结果:A, Å, Ä, B, ..., N, O, Ö, P, ...

我认为这将是任何偏离拉丁字母表的语言的问题。我所做的所有测试都在模拟器上进行。我的开发团队正在对框架进行更改,因此也欢迎提供低级别的答案。

Uri uri = ContactsContract.Contacts.CONTENT_URI;
String[] projection = new String[] {
ContactsContract.Contacts._ID,
ContactsContract.Contacts.DISPLAY_NAME,
ContactsContract.Contacts.PHOTO_ID
};
String selection = ContactsContract.Contacts.IN_VISIBLE_GROUP + " = '1'";
String sortOrder = ContactsContract.Contacts.DISPLAY_NAME + " COLLATE LOCALIZED ASC";
mCursor = managedQuery(uri, projection, null, null, sortOrder);

更新:我们目前正在调查这条赛道:Sort a String array , 待定...我还将它添加为 Google Code 上的一个问题。

最佳答案

嘎啊。看起来是这样的:

在原始 Java (SE-1.6) 中运行以下代码会生成所需的输出:

String strings[] = {"Åke", "Äskil", "Otto", "Adam", "Örjan", "Palle", "Nisse"};
Locale locale = new Locale("sv", "SE");
Collator collator = java.text.Collator.getInstance(locale);
java.util.Arrays.sort(strings, collator);

但 Android 中完全相同的代码对我不起作用。

编辑:我做了一个 issue在 Android Google Code 网站上,它已被评论者评论。

关于安卓联系人 : Incorrect localized collation/sorting,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4245522/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com