gpt4 book ai didi

android - 在 Android AlphabetIndexer 中组合大小写字母

转载 作者:行者123 更新时间:2023-11-29 17:50:34 25 4
gpt4 key购买 nike

我知道AlphabetIndexer Android 中的类使用 ASCII ordering订购列表中的项目。这意味着如果我有以小写字母“a”开头的项目,它将在大写字母“Z”之后排序,这似乎不太合逻辑。那么在这种情况下有没有办法以某种方式组合大小写字母呢?

在这方面成功的一个很好的例子是 Viber 的联系人列表,他们不仅设法将“Y”和“y”放在同一部分,而且还在 SectionIndexer 中显示两个字母“Yy”。那么是否可以用默认的AlphabetIndexer来实现呢?有人遇到过此类问题吗?

enter image description here

最佳答案

看起来这个问题的解决方案更容易但有点棘手。看来问题不在于 AlphabetIndexer 本身,而在于它获取的游标中元素的排序方式。所以我为解决这个问题所做的一切就是在我的 SQL 查询中添加一个正确的 COLLATE

所以我添加了以下内容作为排序顺序:

private final String SORT_ORDER = Contacts.DISPLAY_NAME_PRIMARY + " COLLATE LOCALIZED ASC";

注意:Contacts.DISPLAY_NAME_PRIMARY 适用于 API 11+ ...对于较低的 API,您需要 Contacts.DISPLAY_NAME

P.S 我想这是我为解决这个问题所做的唯一事情,但我记不太清了。如果没有帮助,请告诉我,我会再次查看我的代码。

关于android - 在 Android AlphabetIndexer 中组合大小写字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23142259/

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