我有数据库这样的:的Android /火力地堡计算数字行的总和相同的孩子
"Users" : {
"user_ykdF5b234afdgd" : {
"Scoring" : [ {
"Name" : "Name1",
"punkte" : "0"
}, {
"Name" : "Name2",
"punkte" : "0"
} ],
"image" : "",
"membertype" : "bike",
"startnummer" : "1",
"teamname" : "Paul Musterman"
}
},
"user_ykdF5b234afdgd2" : {
"Scoring" : [ {
"Name" : "Name1",
"punkte" : "0"
}, {
"Name" : "Name2",
"punkte" : "0"
} ],
"image" : "",
"membertype" : "bike",
"startnummer" : "1",
"teamname" : "Franz Musterman"
}
},
user_ykdF5b234afdgd是我的表:
用户:{ user_ykdF5b234afdgd:{ ....
我想在每个UserChild中的Scoring孩子中显示和总结“punkte”。
"Scoring" : [ {
"Name" : "Name1",
"punkte" : "100"
}, {
"Name" : "Name2",
"punkte" : "150"
} ],
我想添加100 + 150,并在我的Android布局中显示250。
mDatabase.child("Users").child("user_ykdF5b234afdgd/Scoringboard").orderByChild("Name").addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
if (dataSnapshot.exists()) {
for (DataSnapshot snapshot :
dataSnapshot.getChildren()) {
try {
Log.d("debuug", String.valueOf(snapshot.child("Name").getValue()) + " "+ String.valueOf(snapshot.child("punkte").getValue()));
} catch (NumberFormatException e) {
Log.d("debuug", "Eingabe nicht valide");
}
}
}
}
@Override
public void onCancelled(DatabaseError databaseError) {}
});
我测试了这一点,并得到了分数,但是这两个“失败”
1)我怎么能使用这个与我的所有子项?
mDatabase.child("Users").child("user_ykdF5b234afdgd/Scoringboard").orderByChild("Name").addValueEventListener(new ValueEventListener() {
只能在这些孩子.... TEILNEHMERDATA包含我的所有用户
2)我怎样才能总结成绩?
谢谢=)
如果有什么不清楚,我会解释!
感谢您的答复。 改变了一点,它的工作原理:(看我自己的答案) – georf