0
私は(ユーザー:....)表示したいをしかし、私は、ユーザーへのパスがわかりません。 listviewでUser showを選択する方法。あなたは(すべて)とMember.classのITモデルショーLISTUSER(プライベート文字列キー、ユーザー)のセットのために、取得キーユーザー
私は(ユーザー:....)表示したいをしかし、私は、ユーザーへのパスがわかりません。 listviewでUser showを選択する方法。あなたは(すべて)とMember.classのITモデルショーLISTUSER(プライベート文字列キー、ユーザー)のセットのために、取得キーユーザー
:私のコードを見て、表のユーザを選択する方法
に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) {
}
});
}
を助けてください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);
}
}
希望します。
これはうまくいきません。質問を見て、もう一度私を助けることができますか?ご協力ありがとうございます – ThLez
Member.javaクラスを投稿できますか? – wnieves19
OK!仲間編集が助けてくれてありがとう! @ wnieves19 – ThLez