Соединение двух объектов в Firebase в Firebaserecycleadapter - PullRequest
0 голосов
/ 17 ноября 2018

У меня есть Cardview, который уже работает.Вот код:

  @Override
public void onStart() {
    super.onStart();
FirebaseRecyclerAdapter<Model, ViewHolder> firebaseRecyclerAdapter =
        new FirebaseRecyclerAdapter<Model, ViewHolder>(Model.class,R.layout.row,ViewHolder.class,mref)
        {

            @Override
            protected void populateViewHolder(ViewHolder viewHolder, Model model, int position) {
                String userid = model.getUserid().toString();


                viewHolder.setDetails(getActivity().getApplicationContext(),model.getPetname(),"Reason:" + model.getReason(),model.getPetpicture(),"Breed:" + model.getBreed(),
                       "Age:  " + model.getAge(),"Size: " +  model.getPetsize() +"yrs old","Color:" + model.getPetcolor(),model.getUserid(),model.datepost);
            }
        };

    recyclerView.setAdapter(firebaseRecyclerAdapter);
}

Этот model.getUserid () получает идентификатор пользователя, который разместил, что он отображает UID, заданный Firebase.Теперь я хочу преобразовать этот UID в имя, которое я имею от другого пользователя Entity:

введите описание изображения здесь

введите описание изображения здесь

Короче говоря, я хочу заполнить свой Cardview, но вместо Userid я хочу преобразовать его в имя.

1 Ответ

0 голосов
/ 17 ноября 2018

что вы можете сделать, это то, что после извлечения этого userId вы выбираете имя, используя прослушиватель события value, как показано ниже
DatabaseReference userRef = FirebaseDatabase.getInstance (). GetReference ("Пользователь");

    String userId = "the_user_id";

    userRef.child(userId).addListenerForSingleValueEvent(new ValueEventListener() {
        @Override
        public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
            if(dataSnapshot.exists())
            {
                String name = dataSnapshot.getValue(User.class).getName();

            }
        }

        @Override
        public void onCancelled(@NonNull DatabaseError databaseError) {

        }
    });`
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...