【发布时间】:2015-03-25 00:35:56
【问题描述】:
我已使用 childByAutoId 保存了我的数据,因此它在 Firebase 中按时间顺序排列。当我使用下面的查询进行查询,然后打印snapshot.value 时,它会按我预期的顺序打印--按时间顺序排列--,但是当我尝试枚举snapshot.value 时,并且当我尝试使用[snap.value allkeys] 获取密钥时,它们不再按时间顺序排列。我尝试使用[self.refMyOrder queryOrderedByKey] 和[self.refMyOrders queryOrderedByChild:@"timestamp",我有一个孩子timestamp,这是纪元时间的数据类型long。但是,它仍然没有保持预期的顺序。
我了解 NSDictionary 的底层数据结构不是 有序 数据结构。
我做错了什么?
[self.refMyOrders observeSingleEventOfType:FEventTypeValue withBlock:^(FDataSnapshot *snapshot) {
NSLog(@"snapshot.value = %@", snapshot.value);
NSLog(@"all keys = %@", [snapshot.value allKeys]);
}];
【问题讨论】: