Android Firebase显示数据

Android Firebase显示数据,android,firebase,firebase-realtime-database,Android,Firebase,Firebase Realtime Database,我想显示(用户:…),但我不知道用户的路径。如何在listview中选择用户显示。请查看我的代码并帮助我 public class ListUserRoom extends AppCompatActivity { private ListView listView; List<Member> members = new ArrayList<>(); private DatabaseReference mDatabase = FirebaseD

我想显示(用户:…),但我不知道用户的路径。如何在listview中选择用户显示。请查看我的代码并帮助我

public class ListUserRoom extends AppCompatActivity {

    private ListView listView;

    List<Member> members = new ArrayList<>();

    private DatabaseReference mDatabase = FirebaseDatabase.getInstance().getReference();

    private String keyOfRoom = "";

    private String keyOfMember = "";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_list_user_room);

        createListUser();

    }

    private void createListUser() {

        listView = (ListView)findViewById(R.id.listView);
        listView.setAdapter(new ListUserRoom.ImageAdapter(this));

        Intent getData = getIntent();
        if(getData != null){
            keyOfRoom = getData.getExtras().getString("key" , "");
        }
        getData = getIntent();
        if(getData != null){
            keyOfMember = getData.getExtras().getString("keymember" , "");
        }
        mDatabase = FirebaseDatabase.getInstance().getReference()
                .child("AllRoom").child(keyOfRoom)
                .child("Member").child(keyOfMember)
                .child("User");

        mDatabase.addValueEventListener(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {

                Set<String> set = new HashSet<String>();
                Iterator i = dataSnapshot.getChildren().iterator();
                dataSnapshot.getValue();


                while (i.hasNext()){
                    DataSnapshot data = (DataSnapshot)i.next();
                    Member member = data.getValue(Member.class);
                    member.setKey(data.getKey());
                    members.add(member);
                }
            }

            @Override
            public void onCancelled(DatabaseError databaseError) {

            }
        });
    }
公共类ListUserRoom扩展了AppCompative活动{
私有列表视图列表视图;
列表成员=新的ArrayList();
私有数据库引用mDatabase=FirebaseDatabase.getInstance().getReference();
私有字符串keyOfRoom=“”;
私有字符串keyOfMember=“”;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u list\u user\u room);
createListUser();
}
私有void createListUser(){
listView=(listView)findViewById(R.id.listView);
setAdapter(新的ListUserRoom.ImageAdapter(this));
Intent getData=getIntent();
if(getData!=null){
keyOfRoom=getData.getExtras().getString(“key”,即“”);
}
getData=getIntent();
if(getData!=null){
keyOfMember=getData.getExtras().getString(“keymember”,即“”);
}
mDatabase=FirebaseDatabase.getInstance().getReference()
.儿童(“所有房间”).儿童(房间钥匙)
.子女(“成员”).子女(成员)
.儿童(“用户”);
mDatabase.addValueEventListener(新的ValueEventListener(){
@凌驾
公共void onDataChange(DataSnapshot DataSnapshot){
Set=newhashset();
迭代器i=dataSnapshot.getChildren().Iterator();
dataSnapshot.getValue();
while(i.hasNext()){
DataSnapshot data=(DataSnapshot)i.next();
成员=data.getValue(Member.class);
setKey(data.getKey());
成员。添加(成员);
}
}
@凌驾
已取消的公共void(DatabaseError DatabaseError){
}
});
}

如何选择表用户:(全部)和成员。为show listuser(私有字符串键,用户)设置it模型,获取键用户

在AllRoom表之后的数据库引用中缺少子键

mDatabase = FirebaseDatabase.getInstance().getReference() 
            .child("AllRoom")
            .child(missingKey)//You need to add a key here to be able to access Member
            .child("Member"); 
在你解决了这个问题之后,这里有一个我已经为你的问题修改过的代码

       mDatabase.addValueEventListener(new ValueEventListener() { 
        @Override 
        public void onDataChange(DataSnapshot dataSnapshot) {

            for (DataSnapshot snapshot : dataSnapshot.getChildren()){
                Member member = data.getValue(Member.class);
                member.setKey(data.getKey());
                Members.add(member);
            }

        } 

希望这有帮助

你能发布你的Member.java类吗?好的!兄弟编辑完成感谢帮助!!@wnieves19不起作用。你能看到问题并再次帮助我吗?谢谢你的帮助