我正在尝试从每个用户ID中添加数量,并在textview中显示总数。
我有一个示例代码,但无法正常工作
final TextView Quant = (TextView)findViewById(R.id.Quant);
DatabaseReference mDatabase = FirebaseDatabase.getInstance().getReference().child("History");
mDatabase.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
int sum = 0;
for(DataSnapshot ds : dataSnapshot.getChildren())
{
Map<String,Object> map = (Map<String,Object>)ds.getValue();
Object Quantity = map.get("Quantity");
int pValue = Integer.parseInt(String.valueOf(Quantity));
sum += pValue;
Quant.setText(String.valueOf(sum));
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
最佳答案
更改此:
DatabaseReference mDatabase = FirebaseDatabase.getInstance().getReference().child("History");
对此:
DatabaseReference mDatabase = FirebaseDatabase.getInstance().getReference().child("history");
您的数据库中的历史记录是小写字母,这里也应该相同
关于java - 在Firebase中计算子节点值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49133668/