将项目列表从android应用程序保存到firebase数据库的顺序
我正在将我的应用程序中的项目列表(通过逐个添加项目)保存到firebase数据库中,当我添加第10个元素时,它在1个(关键)节点(不低于第9个)和第2个节点移到10以下后保存,如下图所示。项目列表显示在RecyclerView中的顺序与保存在firebase数据库中的顺序相同。为什么项目以这种方式保存将项目列表从android应用程序保存到firebase数据库的顺序,android,firebase,firebase-realtime-database,Android,Firebase,Firebase Realtime Database,我正在将我的应用程序中的项目列表(通过逐个添加项目)保存到firebase数据库中,当我添加第10个元素时,它在1个(关键)节点(不低于第9个)和第2个节点移到10以下后保存,如下图所示。项目列表显示在RecyclerView中的顺序与保存在firebase数据库中的顺序相同。为什么项目以这种方式保存 这是预期的行为。Firebase实时数据库中的键是字符串,它们以所谓的字典顺序显示 如果你使用字母,你也会期望这样的顺序: a b ba c 当数字按字典顺序排序时,它们没有什么不同,就像它们
这是预期的行为。Firebase实时数据库中的键是字符串,它们以所谓的字典顺序显示 如果你使用字母,你也会期望这样的顺序:
- a
- b
- ba
- c
如果你想看到一个数字排序顺序,考虑把数字填充到一个固定的,例如用零预加:
- 收成:000
- 作物:001
- 作物:002
- 收成:010
请注意,在Firebase中,通常使用数字顺序值作为键是一种反模式,建议使用内置的按键。更多信息,请参见:。非常感谢!除了内置的按键,还有什么方法可以对列表进行排序吗?如果要在firebase数据库中手动保存项目列表,然后在应用程序中检索它们,该怎么办??有没有办法手动生成按键?算法有完整的文档,代码也可用。请参阅要了解排序数据的其他方法,请参阅: