первое значение datasnapshot.getKey () сохраняется несколько раз в списке пользователей, в результате чего лента новостей появляется несколько раз. что обходится для этого. Заранее спасибо
List<String> userList;
rootRef.child("Contacts").child(currentUser).addChildEventListener(new ChildEventListener() {
@Override
public void onChildAdded(@NonNull DataSnapshot dataSnapshot, @Nullable String s) {
userList.add(dataSnapshot.getKey());
for (int i = 0; i < userList.size(); i++) {
Log.v("users", userList.get(i));
rootRef.child("NewsFeed").child(userList.get(i)).addChildEventListener(new ChildEventListener() {
@Override
public void onChildAdded(@NonNull DataSnapshot dataSnapshot, @Nullable String s) {
if(dataSnapshot.exists()) {
NewsFeed newsFeed = dataSnapshot.getValue(NewsFeed.class);
postList.add(newsFeed);
newsFeedAdapter.notifyDataSetChanged();
userPostList.smoothScrollToPosition(userPostList.getAdapter().getItemCount());
}else{
}
}
@Override
public void onChildChanged(@NonNull DataSnapshot dataSnapshot, @Nullable String s) {
}
@Override
public void onChildRemoved(@NonNull DataSnapshot dataSnapshot) {
}
@Override
public void onChildMoved(@NonNull DataSnapshot dataSnapshot, @Nullable String s) {
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
мой журнал ниже: -
2019-10-25 10:47:48.902 7132-7132/com.mmcorp.maaz.whatsappv3 V/users: EfDIL7fNuDM4wfWlLcSl8kf3HK92
2019-10-25 10:47:48.904 7132-7132/com.mmcorp.maaz.whatsappv3 V/users: EfDIL7fNuDM4wfWlLcSl8kf3HK92
2019-10-25 10:47:48.905 7132-7132/com.mmcorp.maaz.whatsappv3 V/users: kwE9OH2D7Mc6btEQUZycpo08HGd2