亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在數組中安排 firebase 檢索?

如何在數組中安排 firebase 檢索?

繁星淼淼 2023-06-08 17:39:04
我正在嘗試檢索并顯示用戶過去的付款。為此,我使用了一個 Recycler-view,它從數組中獲取信息并顯示所有過去的交易。從上面的數據庫(在圖像中),我想檢索此數據并將其存儲在以下格式的數組中:amount[]={"100","200"};             rid[]={"123456",123456"};             date_time[]={"16 Aug 2019 14:10:26","16 Aug 2019 14:12:26"};以下是我需要幫助的 Android Studio 代碼:      FirebaseDatabase.getInstance().getReference().child("payments").child(firebaseAuth.getUid()).addListenerForSingleValueEvent(new ValueEventListener() {            @Override            public void onDataChange(@NonNull DataSnapshot dataSnapshot) {                //How to retrieve the data in above array format            }            @Override            public void onCancelled(@NonNull DatabaseError databaseError) {            }        });
查看完整描述

2 回答

?
瀟瀟雨雨

TA貢獻1833條經驗 獲得超4個贊

您可以使用List:


List<String> amountList   = new ArrayList<>();

List<String> ridList      = new ArrayList<>();

List<String> dateTimeList = new ArrayList<>();     

FirebaseDatabase.getInstance().getReference().child("payments").child(firebaseAuth.getUid()).addListenerForSingleValueEvent(new ValueEventListener() {

   @Override

   public void onDataChange(@NonNull DataSnapshot dataSnapshot) {

    for(DataSnapshot ds : dataSnapshot.getChildren()){

        String amount    = ds.child("amount").getValue(String.class);

        String rid       = ds.child("rid").getValue(String.class);

        String dateTime  = ds.child("date_time").getValue(String.class);

        amountList.add(amount);

        ridList.add(rid);

        dateTimeList.add(dateTime);

     }             

   }


   @Override

   public void onCancelled(@NonNull DatabaseError databaseError) {


    }

  });

你databaseReference在 nodeuid然后你在里面循環uid并獲取每個屬性的值,然后你可以將它們添加到 a 中List。


查看完整回答
反對 回復 2023-06-08
?
拉丁的傳說

TA貢獻1789條經驗 獲得超8個贊

int count = (int) datasnapshot.getChildrenCount();

String amount[]=new String[count];             

....

// initialize other arrays


int i=0; //loop counter

for(Datasnapshot post: datasnapshot.getChildren){

 ...

 //iterate every value and insert into respective array

}

除了這個之外,我在單個 Firebase 查詢中看不到任何方式,或者您可以改用 List<> 。


查看完整回答
反對 回復 2023-06-08
  • 2 回答
  • 0 關注
  • 153 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號