使用 Firebase orderByChild 进行不区分大小写的排序

Case insensitive sorting with Firebase orderByChild

我正在使用 FirebaseRecyclerAdapter 来显示字符串列表。我的查询使用 orderByChild。结果按大写字母排序,如下所示:

项目 1、项目 2、项目 3、aItem、bItem、zItem。

如何使用 orderByChild 进行不区分大小写的排序?

你不知道。有点。

如果您有要作为排序依据的数据,但还需要该数据的用户表示,请保留两个版本

posts
  post_id_0
    display_version: William
    sort_version: william
  post_id_1
    display_version: Henry
    sort_version: henry

当然,您可以从 Firebase 中读取所有数据并使用 .toLower 或任何您的平台调用,然后在代码中排序。

您可以使用 sortBy():

List 等本地数据源进行排序
firebaseUsers.sortBy { it.user.nickName.toLowerCase(Locale.ROOT) }