简体   繁体   English

从 Firebase 检索的数据始终为空

[英]Retrieved data from firebase always null

I have data.我有数据。 I want to get data from Firebase.我想从 Firebase 获取数据。 This is my structure:这是我的结构:

"data" : {
   "A01" : {
     "status" : 1,
     "tglkeluar" : "12-03-2019"
    },
   "A02" : {
     "status" : 1,
     "tglkeluar" : "10-03-2019"
   }
 },

This is my structure:这是我的结构:

结构体

And I used this code to get data from child "A01" only :我用这个代码,只能从子“A01”的数据:

mDatabaseA01 = FirebaseDatabase.getInstance().getReference("data").child("A01");
mDatabaseA01.addListenerForSingleValueEvent(new ValueEventListener() {
    @Override
    public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
        for(DataSnapshot postSnapshot : dataSnapshot.getChildren()){
            Data status = postSnapshot.getValue(Data.class);
            Toast.makeText(HalamanAdmin.this, status.getStatus(), Toast.LENGTH_SHORT).show();
        }
    }

But the data is null.但是数据为空。 What am I doing wrong now?我现在做错了什么?

Here is the problem这是问题所在

for(DataSnapshot postSnapshot : dataSnapshot.getChildren()){
    Data status = postSnapshot.getValue(Data.class);
    Toast.makeText(HalamanAdmin.this, status.getStatus(), Toast.LENGTH_SHORT).show();
 }

Your data no longer exists with children objects since you are inside the children.您的数据不再存在于子对象中,因为您在子对象中。 Instead, you should do this相反,你应该这样做

Data status = new Data(dataSnapshot.get("status"), dataSnapshot.get("tglkeluar");

Please remember to have the constructor on the Data class请记住在 Data 类上有构造函数

public Data(String status, String tglkeluar){
    this.status = status;
    this.tglkeluar = tglkeluar;
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM