Я пишу приложение для Android, в котором есть события и пользователи.Firebase UI - Как синхронизировать ListView со сложными данными
Событие имеет много пользователей, и у пользователя много событий.
Так я структурировал свою базу данных, как это:
- events
- <event_id>
- ...
- users
- <user_id1>
- <user_id2>
- ...
- users
- <user_id1>
- <user_detail1>
- <user_detail2>
- ...
- <user_id2>
- <user_detail1>
- <user_detail2>
- ...
Теперь у меня есть активность с ListView, и я успешно удалось показать список всех событий с FirebaseUI использованием FirebaseListAdapter.
У меня есть вторая операция, в которой я хочу показать сведения о мероприятии, а другой ListView отображает список пользователей для этого события.
Мой вопрос: если я использую FirebaseListAdapter, я могу только показать user_id, как я могу получить данные о пользователе, чтобы показать их в ListView?
EDIT
Чтобы быть более точным, я хочу, чтобы список пользователей определенного события, которые будут связаны с ListView. Я хочу использовать FirebaseListAdapter для этого, так что мой код выглядит следующим образом на данный момент:
fireAdapter = new FirebaseListAdapter<String>(
this,
String.class,
android.R.layout.simple_list_item_1,
mRootRef.child("events").child("users") //here I have all user_id that I want to retrieve details for
) {
@Override
protected void populateView(View v, String model, int position) {
//the string "model" will now have a user_id
TextView userName = (TextView)v.findViewById(android.R.id.text1); //I want to populate this field
String usernameString;
//How do I get to retrieve the username from user_id into this variable?
userName.setText(usernameString);
}
};
ИТАК благодаря вашему ответу я узнал, что можно прикрепить слушатель внутри функции poplateView из FirebaseListAdapter, и работают как шарм :) Большое спасибо – alephz3r0