3
我想增加每月的记分牌,但对我来说似乎有点困难。我不知道如何对某个列表或数组采取特定的值。像日期一样,只能使用09.01.2017值。如果我能做到这一点,那么我认为我可以按价值分类。Firebase根据日期排序积分
FirebaseDatabase database = FirebaseDatabase.getInstance();
final DatabaseReference highscoreRef = database.getReference();
// Ordering with score and adding key values as string to nameList and scoreList
highscoreRef.orderByChild("score").limitToLast(10).addChildEventListener(new ChildEventListener() {
@Override
public void onChildAdded(DataSnapshot snapshot, String previousChildKey) {
try {
nameList.push(snapshot.child("name").getValue().toString());
scoreList.push(snapshot.child("score").getValue().toString());
} catch (Exception e) {
//Toast.makeText(getApplicationContext(), "Error fetching data.", Toast.LENGTH_SHORT).show();
}
}
@Override
public void onChildChanged(DataSnapshot dataSnapshot, String s) {
}
@Override
public void onChildRemoved(DataSnapshot dataSnapshot) {
}
@Override
public void onChildMoved(DataSnapshot dataSnapshot, String s) {
}
@Override
public void onCancelled(DatabaseError databaseError) {
Toast.makeText(getApplicationContext(), "Error sending data.", Toast.LENGTH_LONG).show();
}
});
嘿,我现在已经整理这个像这样并且我无法每月都获得最佳效果:http://i.imgur.com/eAvZRen.png – chazefate
使用截图中的当前结构,您只能获得每日排行榜。如果你想要一个每月的排行榜,你应该像我在我的回答中一样存储每月排行榜。 –
非常感谢! – chazefate