计算firebase中的子节点值

时间:2018-03-06 14:52:40

标签: android firebase firebase-realtime-database

我尝试添加每个用户ID的数量,并在textview中显示总数。 enter image description here

我有一个示例代码,但它无效

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) {

        }
    });

1 个答案:

答案 0 :(得分:1)

改变这个:

DatabaseReference mDatabase = FirebaseDatabase.getInstance().getReference().child("History");

到此:

DatabaseReference mDatabase = FirebaseDatabase.getInstance().getReference().child("history");

历史记录在数据库中是小写的,在这里也应该是相同的