我有一个对象。
{
featured-routines: {
1465895195: "-LALALA"
1465898164: "-KK7pEednXoUBszpqCmg"
1465898185: "-KK9xFyA8skOvSLhaHWq"
}
}
我试着通过调用来获取它们:
Database.getFeaturedReference()
.orderByKey()
.addValueEventListener(routineListener);
结果应按升序排列,但事实并非如此。这完全是随机的。它甚至与仪表板GUI中显示的顺序不同:
{ key = featured-routines, value = {1465898185=-KK9xFyA8skOvSLhaHWq, 1465895195=-LALALA, 1465898164=-KK7pEednXoUBszpqCmg} }
任何人都知道如何以正确的顺序获得它们?
答案 0 :(得分:1)
要按照您要求的顺序处理孩子,您必须在ChildEvenListener
中使用DataSnapshot.getChildren()
或ValueEventListener
:
ValueEventListener routineListener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot snapshot) {
for (DataSnapshot child : snapshot.getChildren()) {
Systme.out.println(snapshot.getKey());
}
}
...
});