Android Studio Firebase База данных, как получить значение другого класса в вызове - PullRequest
0 голосов
/ 16 октября 2018

Я хочу знать, как получить значение другого класса в этом вызове onDataChange в for.Что при каждом вызове for я выполняю вызов с данными «Тип объявления» и «IdAd».

Внутри for (DataSnapshot ds: dataSnapshot.getChildren ()) { у каждого ребенка я бы хотел получить значение в классе Type Ad(DatabaseReference usersRef = rootRef.child("TypeAd")) (отличается от класса вызова, который DatabaseReference usersRef = rootRef.child("Usuarios").child(IdUser).child("Chats"); ) получен при первом вызове. Большое спасибо за помощь

Моя активность:

private void ConversUsersData() {

        RefreshList();//Resetea y no vuelve a printar
        //set progres bar
        showLoading.setVisibility(View.VISIBLE);
        DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
        DatabaseReference usersRef = rootRef.child("Usuarios").child(IdUser).child("Chats");
        ValueEventListener eventListener = new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {

                for (DataSnapshot ds : dataSnapshot.getChildren()) {
                    String key = ds.getKey();
                    String TypeAd = ds.child("TypeAd").getValue(String.class);
                    String IdAd = ds.child("IdAd").getValue(String.class);
                    String IdOtherUser = ds.child("IdOtherUser").getValue(String.class);
                    String nameOtherUser = ds.child("nameOtherUser").getValue(String.class);
                    String nameAd = ds.child("nameAd").getValue(String.class);
                    Boolean readBool =  ds.child("read").getValue(boolean.class);

                    //Log.i(idadname, "onDataChange: ");
                    //crea modelo usuariochat
                    ConversChat userchat = new ConversChat(key, IdAd, IdOtherUser, TypeAd, "08-03-1987",nameAd ,nameOtherUser, readBool);
                    ConversChatsList.add(userchat);

                }//posar el card view i adapter
                if (!ConversChatsList.isEmpty()) {
                    usersList.setVisibility(View.VISIBLE);
                    MyChats_Adapter adapter = new MyChats_Adapter(getActivity(), R.layout.adapter_chatlist, ConversChatsList);
                    usersList.setAdapter(adapter);
                    //usersList.setAdapter(new ArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_1, ConversChatsList));

                } else {
                    usersList.setVisibility(View.GONE);
                    no_chat.setVisibility(View.VISIBLE);
                }
            }

            @Override
            public void onCancelled(DatabaseError databaseError) {

            }
        };
        usersRef.addListenerForSingleValueEvent(eventListener);
        showLoading.setVisibility(View.INVISIBLE);
    }

1 Ответ

0 голосов
/ 16 октября 2018

просто сделайте еще один запрос внутри цикла for

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