第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

在firebase android開發(fā)中通過循環(huán)從子節(jié)點檢索特定數(shù)據(jù)

在firebase android開發(fā)中通過循環(huán)從子節(jié)點檢索特定數(shù)據(jù)

拉丁的傳說 2022-12-15 11:04:44
我正在嘗試從 firebase 數(shù)據(jù)庫中獲取特定值。請先查看代碼。這是數(shù)據(jù)庫參考DatabaseReference databasedeposit= FirebaseDatabase.getInstance().getReference("Deposit");totalb.setOnClickListener(new View.OnClickListener() {        @Override        public void onClick(View view) {            databasedeposit.addListenerForSingleValueEvent (new ValueEventListener() {                @Override                public void onDataChange(DataSnapshot dataSnapshot) {                    abc.clear();                    Integer total = 0;                    for (DataSnapshot ds : dataSnapshot.getChildren()) {                        ADeposit bazar = ds.getValue(ADeposit.class);                        Integer cost = Integer.valueOf(bazar.getAmount());                        total = total + cost;                        abc.add(bazar);                    }                    Query queryn=databasedeposit.orderByChild("name").equalTo("Rabbani");                    queryn.addListenerForSingleValueEvent(new ValueEventListener() {                        @Override                        public void onDataChange(DataSnapshot dataSnapshot) {                            Integer n_total=0;                            for (DataSnapshot ds : dataSnapshot.getChildren()) {                                ADeposit bazar = ds.getValue(ADeposit.class);                                Integer c = Integer.valueOf(bazar.getAmount());                                n_total = n_total + c;                            }                        }                        @Override                        public void onCancelled(DatabaseError databaseError) {                        }                    });                    DepositList adapter = new DepositList(admininterface.this,abc);                    deposit.setAdapter(adapter);        }    });}現(xiàn)在總成本很容易計算出來。但是來自用戶的特定數(shù)據(jù),例如此處的“Rabbani”,用于檢索他的總金額我創(chuàng)建了一個查詢,但我無法從對話框之類的部分訪問 n_total 值。看一下數(shù)據(jù)庫結(jié)構(gòu):
查看完整描述

1 回答

?
蠱毒傳說

TA貢獻1895條經(jīng)驗 獲得超3個贊

您不需要嵌套的偵聽器來獲取Rabbani支出。由于此數(shù)據(jù)已存在于 中databasedeposit,因此您可以if在現(xiàn)有循環(huán)中使用 來跟蹤該數(shù)據(jù):


databasedeposit.addListenerForSingleValueEvent (new ValueEventListener() {

    @Override

    public void onDataChange(DataSnapshot dataSnapshot) {


        abc.clear();

        Integer total = 0;

        Integer n_total=0;


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

            ADeposit bazar = ds.getValue(ADeposit.class);

            Integer cost = Integer.valueOf(bazar.getAmount());

            total = total + cost;

            abc.add(bazar);


            if ("Rabbani".equals(ds.child("name").getValue(String.class)) {

                n_total = n_total + cost;

            }

        }


        System.out.println("total: "+total+", n_total: "+n_total);


        ...


    }



    @Override

    public void onCancelled(DatabaseError databaseError) {

        throw databaseError.toException(); // don't ignore errors

    }

}); ;


查看完整回答
反對 回復(fù) 2022-12-15
  • 1 回答
  • 0 關(guān)注
  • 89 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號