2017-05-27 44 views
0

我想要獲取我的Firebase數據庫的子項中所有int的SUM。如何在Firebase數據庫中獲取子條目的SUM

我的數據庫的設置類似於

beans-card 
    - users 
     - (UID from Firebase Auth) 
      - Receipt 
        - keyID 
         - amount: 11 
         - points: 22 
        - keyID 
         - amount: 11 
         - points: 22 

我想點的TextView的總和,並顯示在不同的片段

這裏是我的收款分類

public class Receipt { 

    public int amount; 
    public int points; 

    public Receipt(){} 

    public Receipt(int amount, int points) { 
     this.amount = amount; 
     this.points = points; 
    } 

    public int getAmount(){ 
     return amount; 
    } 

    public void setAmount(int amount){ 
     this.amount = amount; 
    } 

    public int getPoints(){ 
     return points; 
    } 

    public void setPoints(int points){ 
     this.points = points; 
    } 

} 

這裏是我如何將數據輸入到我的數據庫中

Receipt receipt = new Receipt(second, second*2); 

mDatabase.child("users").child(mUserId) 
.child("Receipt").push().setValue(receipt); 
+0

你會如何得到'List '?有了這些信息,你會在一半 –

回答

2
DatabaseReference db_receipt =FirebaseDatabase.getInstance().getReference().child("users").child(uid).child("Receipt") 
long sum = 0; 
db_receipt.addListenerForSingleValueEvent(new ValueEventListener() { 
     @Override 
     public void onDataChange(DataSnapshot dataSnapshot) { 
      for (DataSnapshot ds:dataSnapshot.getChildren() 
        ) { 
         sum = sum + points; 
         } 

       } 
      } 


     @Override 
     public void onCancelled(DatabaseError databaseError) { 

     } 
    }); 
相關問題