У меня есть эта база данных:FirebaseRecyclerAdapter с 2 Чайлдсом
Database:
X:{
UserID:{
UNIQUE_ID_GENERATED_BY_PUSH_METHOD:{
x:"hello",
y:"hey there!"
}
UNIQUE_ID_2_GENERATED_BY_PUSH_METHOD:{
x:"what's up?",
y:"Nothing Much"
}
}
UserID2:{
UNIQUE_ID_GENERATED_BY_PUSH_METHOD:{
x:"bye",
y:"Have a nice day!"
}
UNIQUE_ID_2_GENERATED_BY_PUSH_METHOD:{
x:"what's up?",
y:"Nothing Much"
}
}
}
Однако мой FirebaseRecyclerAdapter
пуст с этой базой данных, как я прохожу этот DatabaseReference
к моим FirebaseRecyclerAdapter
:
DatabaseReference = FirebaseDatabase.getInstance().getReference().child("X");
mAdapter = new FirebaseRecyclerAdapter<Campaign, CampaignHolder>(Campaign.class, R.layout.recyclerview_template, CampaignHolder.class, ref) {
//...
}
Он отлично работает, когда я не У каждого сообщения есть userID
. Поэтому, если я удалю родителя UserID
, мой FirebaseRecyclerAdapter
не будет пустым.
Как исправить эту проблему?
Я не совсем понимаю, что вы пытаетесь выполнить. Но если вы посмотрите, как отображать информацию из «связанного объекта» ('x' в образце JSON) в представлении, прочитайте этот ответ: http://stackoverflow.com/questions/34559171/coupling-firebaserecyclerviewadapter- to-a-boolean-string-map-entry –
@FrankvanPuffelen Я не думаю, что это связано; Булевы значения были просто примером. Я отредактирую свой вопрос, чтобы быть более ясным –
С помощью этой ссылки ваш 'populateViewHolder()' будет вызываться для каждого пользователя. Вы используете класс «Кампания», который кажется, что это не то же самое. Вам понадобится класс 'User', который содержит кампании. –