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

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

firebase 數據庫讀取問題

firebase 數據庫讀取問題

絕地無雙 2022-11-02 10:37:07
我正在嘗試從 firebase 數據庫的最后一個節點獲取價值我見過一些解決方案,但沒有一個對我有用。代碼如下:            setData = FirebaseDatabase.getInstance().getReference().child("Questions");            Query lastQuery = setData.orderByKey().limitToLast(1);            lastQuery.addListenerForSingleValueEvent(new ValueEventListener() {                @Override                public void onDataChange(DataSnapshot dataSnapshot) {                    if (dataSnapshot.hasChild("JSON_OBJ")) {                        SubmitKey item = dataSnapshot.getValue(SubmitKey.class);                        String key2 = item.getJSON_OBJ();                    } else {                        Snackbar.make(findViewById(R.id.QuestionLayout), "JSON_ObJ not found", Snackbar.LENGTH_LONG).show();                    }                }                @Override                public void onCancelled(DatabaseError databaseError) {                }            });我的構造函數類public class SubmitKey {    private String JSON_OBJ;    public SubmitKey() {    }    public SubmitKey(String JSON_OBJ) {        this.JSON_OBJ = JSON_OBJ;    }    public String getJSON_OBJ() {        return JSON_OBJ;    }}而不是獲取值,而是轉到 else 語句并顯示“未找到 JSON_OBJ”。任何幫助,將不勝感激。編輯:我對代碼進行了一些更改,現在它正在顯示no setter/field found for 0-101 found on class submitKeyD/ViewRootImpl@5b51511[Questions]: ViewPostIme pointer 0D/ViewRootImpl@5b51511[Questions]: ViewPostIme pointer 1如果語句轉到 else 語句,它也不會進入內部
查看完整描述

1 回答

?
守著星空守著你

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

當您對 Firebase 數據庫執行查詢時,可能會有多個結果。所以快照包含這些結果的列表。即使只有一個結果,快照也會包含一個結果的列表。


您onDataChange需要通過迭代來處理此列表snapshot.getChildren():


lastQuery.addListenerForSingleValueEvent(new ValueEventListener() {

    @Override

    public void onDataChange(DataSnapshot snapshot) {

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

        if (dataSnapshot.hasChild("JSON_OBJ")) {

            SubmitKey item = dataSnapshot.getValue(SubmitKey.class);

            String key2 = item.getJSON_OBJ();


        } else {

            Snackbar.make(findViewById(R.id.QuestionLayout), "JSON_ObJ not found", Snackbar.LENGTH_LONG).show();

        }

      }

    }


查看完整回答
反對 回復 2022-11-02
  • 1 回答
  • 0 關注
  • 117 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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