Android 如何在片段中显示节点子节点内的数据?

Android 如何在片段中显示节点子节点内的数据?,android,firebase,android-studio,firebase-realtime-database,fragment,Android,Firebase,Android Studio,Firebase Realtime Database,Fragment,我的编码显示片段中的所有数据:- DatabaseReference ref = FirebaseDatabase.getInstance().getReference().child("Advertisement").child("tuitionPackages").child("0"); ref.addValueEventListener(new ValueEventListener() { @Override public void onD

我的编码显示片段中的所有数据:-

    DatabaseReference ref = FirebaseDatabase.getInstance().getReference().child("Advertisement").child("tuitionPackages").child("0");

    ref.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {
            if (dataSnapshot.exists() && dataSnapshot.getChildrenCount() > 0) {

                Map<String, Object> map = (Map<String, Object>) dataSnapshot.getValue();

                String academicLevel,packageStatus,price,subjects;

                if (map.get("packageStatus") != null) {
                    packageStatus = map.get("packageStatus").toString();
                    mPackageType.setText(packageStatus);
                }
            }
        }

        @Override
        public void onCancelled(DatabaseError databaseError) {
        }

    });
databasereferef=FirebaseDatabase.getInstance().getReference().child(“广告”).child(“学费包”).child(“0”);
ref.addValueEventListener(新的ValueEventListener(){
@凌驾
公共void onDataChange(DataSnapshot DataSnapshot){
if(dataSnapshot.exists()&&dataSnapshot.getChildrenCount()>0){
Map Map=(Map)dataSnapshot.getValue();
字符串级别、包装、价格、主题;
if(map.get(“packageStatus”)!=null){
packageStatus=map.get(“packageStatus”).toString();
mPackageType.setText(packageStatus);
}
}
}
@凌驾
已取消的公共void(DatabaseError DatabaseError){
}
});
我的数据库:-

显示学费包的我的输出:-

试试这个

 DatabaseReference ref = FirebaseDatabase.getInstance().getReference().child("Add your root element").child("tuitionPackages").child("0");

String academicLevel,packageStatus,price,subjects;

            ref.addValueEventListener(new ValueEventListener() {
                @Override
                public void onDataChange(DataSnapshot dataSnapshot) {
                    if (dataSnapshot.exists() && dataSnapshot.getChildrenCount() > 0) {
                        Map<String, Object> map = (Map<String, Object>) dataSnapshot.getValue();
                        if (map.get("academicLevel") != null) {
                            academicLevel = map.get("academicLevel").toString();
                            textView.setText(academicLevel);
                        }

                        if (map.get("packageStatus") != null) {
                            packageStatus = map.get("packageStatus").toString();
                            textView1.setText(packageStatus);
                        }

                        if (map.get("price") != null) {
                            price = map.get("price").toString();
                            textView2.setText(price);
                        }

                        if (map.get("subjects") != null) {
                            subjects = map.get("subjects").toString();
                            textView3.setText(subjects);
                        }
                    }
                }

                @Override
                public void onCancelled(DatabaseError databaseError) {
                }

            });
databasereferef=FirebaseDatabase.getInstance().getReference().child(“添加根元素”).child(“tutionPackages”).child(“0”);
字符串级别、包装、价格、主题;
ref.addValueEventListener(新的ValueEventListener(){
@凌驾
公共void onDataChange(DataSnapshot DataSnapshot){
if(dataSnapshot.exists()&&dataSnapshot.getChildrenCount()>0){
Map Map=(Map)dataSnapshot.getValue();
if(map.get(“academicLevel”)!=null){
academicLevel=map.get(“academicLevel”).toString();
textView.setText(学术级);
}
if(map.get(“packageStatus”)!=null){
packageStatus=map.get(“packageStatus”).toString();
textView1.setText(packageStatus);
}
if(map.get(“price”)!=null){
price=map.get(“price”).toString();
textView2.setText(价格);
}
if(map.get(“主题”)!=null){
subjects=map.get(“subjects”).toString();
textView3.setText(主题);
}
}
}
@凌驾
已取消的公共void(DatabaseError DatabaseError){
}
});
希望能帮上大忙。

试试这个

 DatabaseReference ref = FirebaseDatabase.getInstance().getReference().child("Add your root element").child("tuitionPackages").child("0");

String academicLevel,packageStatus,price,subjects;

            ref.addValueEventListener(new ValueEventListener() {
                @Override
                public void onDataChange(DataSnapshot dataSnapshot) {
                    if (dataSnapshot.exists() && dataSnapshot.getChildrenCount() > 0) {
                        Map<String, Object> map = (Map<String, Object>) dataSnapshot.getValue();
                        if (map.get("academicLevel") != null) {
                            academicLevel = map.get("academicLevel").toString();
                            textView.setText(academicLevel);
                        }

                        if (map.get("packageStatus") != null) {
                            packageStatus = map.get("packageStatus").toString();
                            textView1.setText(packageStatus);
                        }

                        if (map.get("price") != null) {
                            price = map.get("price").toString();
                            textView2.setText(price);
                        }

                        if (map.get("subjects") != null) {
                            subjects = map.get("subjects").toString();
                            textView3.setText(subjects);
                        }
                    }
                }

                @Override
                public void onCancelled(DatabaseError databaseError) {
                }

            });
databasereferef=FirebaseDatabase.getInstance().getReference().child(“添加根元素”).child(“tutionPackages”).child(“0”);
字符串级别、包装、价格、主题;
ref.addValueEventListener(新的ValueEventListener(){
@凌驾
公共void onDataChange(DataSnapshot DataSnapshot){
if(dataSnapshot.exists()&&dataSnapshot.getChildrenCount()>0){
Map Map=(Map)dataSnapshot.getValue();
if(map.get(“academicLevel”)!=null){
academicLevel=map.get(“academicLevel”).toString();
textView.setText(学术级);
}
if(map.get(“packageStatus”)!=null){
packageStatus=map.get(“packageStatus”).toString();
textView1.setText(packageStatus);
}
if(map.get(“price”)!=null){
price=map.get(“price”).toString();
textView2.setText(价格);
}
if(map.get(“主题”)!=null){
subjects=map.get(“subjects”).toString();
textView3.setText(主题);
}
}
}
@凌驾
已取消的公共void(DatabaseError DatabaseError){
}
});

希望对您有帮助。

您可以尝试使用此代码从firebase数据库获取数据,然后您可以使用该数据以片段形式完成字段

databasereferef=FirebaseDatabase.getInstance().getReference().child(“广告”).child(ID1).child(ID2).child(“TutionPackages”);
ref.addListenerForSingleValueEvent(新的ValueEventListener(){
@凌驾
public void onDataChange(@NonNull DataSnapshot DataSnapshot){
String acadLvl=dataSnapshot.child(“学术级别”).getValue(String.class);
String packStatus=dataSnapshot.child(“packageStatus”).getValue(String.class);
int price=dataSnapshot.child(“price”).getValue(Integer.class);
String sub=dataSnapshot.child(“subjects”).getValue(String.class);
}
}
@凌驾
已取消的公共void(@NonNull DatabaseError DatabaseError){
}
});

在这段代码中,
ID1
ID2
是我可以在节点
广告下的数据库图像中看到的字符串

您可以尝试使用这段代码从firebase数据库中获取数据,然后您可以使用该数据完成片段中的字段

databasereferef=FirebaseDatabase.getInstance().getReference().child(“广告”).child(ID1).child(ID2).child(“TutionPackages”);
ref.addListenerForSingleValueEvent(新的ValueEventListener(){
@凌驾
public void onDataChange(@NonNull DataSnapshot DataSnapshot){
字符串acadLvl=dataSnapshot.child(“学术级别”).getV