notifyDataSetChanged 在片段上无法正常工作

上尉肯帕

如标题所述;我发现自己无法正确更新所需的片段。

我有一个向用户显示通知的片段,每次将文档添加到类/数据库时都应该更新它。但是,当我从数据库中手动删除文档时,该类似乎没有更新,而是显示了以前在数据库中找到的文档。此外,如果我打开和关闭应用程序,它确实会显示当前文档。

分段:

public class NotificationFragment extends android.support.v4.app.Fragment {

private RecyclerView mNotificationList;
private NotificationsAdapter notificationsAdapter;
private List<Notifications> mNotifList;
private FirebaseFirestore mFirestore;


public NotificationFragment() {
    // Required empty public constructor
}


@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    // Inflate the layout for this fragment
    View v = inflater.inflate(R.layout.fragment_notification, container, false);


    mNotifList = new ArrayList<>();

    mNotificationList = (RecyclerView) v.findViewById(R.id.notification_list);
    notificationsAdapter = new NotificationsAdapter(getContext(), mNotifList);


    mNotificationList.setHasFixedSize(true);
    mNotificationList.setLayoutManager(new LinearLayoutManager(container.getContext()));
    mNotificationList.setAdapter(notificationsAdapter);

    mFirestore = FirebaseFirestore.getInstance();

    String current_user_id = FirebaseAuth.getInstance().getCurrentUser().getUid();

    mFirestore.collection("Users").document(current_user_id).collection("Notifications").addSnapshotListener(requireActivity(), new EventListener<QuerySnapshot>() {
        @Override
        public void onEvent(QuerySnapshot documentSnapshots, FirebaseFirestoreException e) {
            if (documentSnapshots != null && !documentSnapshots.isEmpty()) {
                for (DocumentChange doc : documentSnapshots.getDocumentChanges()) {
                    if (doc.getType() == DocumentChange.Type.ADDED) {
                        Notifications notifications = doc.getDocument().toObject(Notifications.class);
                        mNotifList.add(notifications);
                        notificationsAdapter.notifyDataSetChanged();

                    }
                }

            }
        }
    });


    return v;
}

数据库结构:

数据库结构

萨蒂亚穆尔

在 NotificationsAdapter.class 中使用下面给定的方法,然后调用此方法,而不是直接在 Fragment 中调用 notifyDataSetChanged()。实际上,您没有将数据传递给出现问题的适配器。

public void updateAdapter(ArrayList<Notifications> mDataList) {
        this.mList = mDataList;
        notifyDataSetChanged();
    }

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

notifyDataSetChanged无法正常工作

来自分类Dev

notifydatasetchanged()无法正常工作

来自分类Dev

FragmentPagerAdapter notifyDataSetChanged无法正常工作

来自分类Dev

notifyDataSetChanged()无法正常工作或被触发?

来自分类Dev

嵌套的RecyclerView的notifyDataSetChanged()无法正常工作

来自分类Dev

来自不同片段的notifyDataSetChanged()

来自分类Dev

自定义适配器notifyDataSetChanged无法正常工作

来自分类Dev

屏幕旋转适配器notifyDataSetChanged无法正常工作

来自分类Dev

无法获取方法notifydatasetchanged

来自分类Dev

WinDeath在notifyDataSetChanged()上

来自分类Dev

无法在Android中设置notifyDataSetChanged

来自分类Dev

无法在CustomListAdapter上调用notifyDataSetChanged

来自分类Dev

PagerAdapter.notifyDataSetChanged不刷新片段

来自分类Dev

notifyDataSetChanged不适用于片段

来自分类Dev

notifyDataSetChanged()无法更新适配器onClick

来自分类Dev

错误:无法解决notifyDataSetChanged(); 安卓

来自分类Dev

在Recyclerview适配器上设置notifyDataSetChanged()

来自分类Dev

如何在ListAdapter上使用notifyDataSetChanged()

来自分类Dev

从RecyclerView上的notifyDataSetChanged删除占位符视图?

来自分类Dev

当EditText处于焦点时,无法在RecyclerView上通知NotifyDataSetChanged

来自分类Dev

片段中从DialogFragment到GridView适配器的notifyDataSetChanged()

来自分类Dev

如何在片段、AsyncTask、RecyclerView 和 GSON 中使用 notifyDataSetChanged

来自分类Dev

android list array adapter.notifydatasetchanged无法正确更新视图

来自分类Dev

无法应用自定义适配器notifyDataSetChanged()

来自分类Dev

无法与RecyclerView一起使用notifyDataSetChanged(),导致NullPointerException

来自分类Dev

NotifyDataSetChanged Recycler 视图:Recycler 时无法调用此方法

来自分类Dev

在调用notifyDataSetChanged的同时,如何处理listView行上的单击?

来自分类Dev

在自定义适配器notifyDataSetChanged上获取NullPointerException

来自分类Dev

在共享首选项中的存储列表上应用 notifyDataSetChanged

Related 相关文章

  1. 1

    notifyDataSetChanged无法正常工作

  2. 2

    notifydatasetchanged()无法正常工作

  3. 3

    FragmentPagerAdapter notifyDataSetChanged无法正常工作

  4. 4

    notifyDataSetChanged()无法正常工作或被触发?

  5. 5

    嵌套的RecyclerView的notifyDataSetChanged()无法正常工作

  6. 6

    来自不同片段的notifyDataSetChanged()

  7. 7

    自定义适配器notifyDataSetChanged无法正常工作

  8. 8

    屏幕旋转适配器notifyDataSetChanged无法正常工作

  9. 9

    无法获取方法notifydatasetchanged

  10. 10

    WinDeath在notifyDataSetChanged()上

  11. 11

    无法在Android中设置notifyDataSetChanged

  12. 12

    无法在CustomListAdapter上调用notifyDataSetChanged

  13. 13

    PagerAdapter.notifyDataSetChanged不刷新片段

  14. 14

    notifyDataSetChanged不适用于片段

  15. 15

    notifyDataSetChanged()无法更新适配器onClick

  16. 16

    错误:无法解决notifyDataSetChanged(); 安卓

  17. 17

    在Recyclerview适配器上设置notifyDataSetChanged()

  18. 18

    如何在ListAdapter上使用notifyDataSetChanged()

  19. 19

    从RecyclerView上的notifyDataSetChanged删除占位符视图?

  20. 20

    当EditText处于焦点时,无法在RecyclerView上通知NotifyDataSetChanged

  21. 21

    片段中从DialogFragment到GridView适配器的notifyDataSetChanged()

  22. 22

    如何在片段、AsyncTask、RecyclerView 和 GSON 中使用 notifyDataSetChanged

  23. 23

    android list array adapter.notifydatasetchanged无法正确更新视图

  24. 24

    无法应用自定义适配器notifyDataSetChanged()

  25. 25

    无法与RecyclerView一起使用notifyDataSetChanged(),导致NullPointerException

  26. 26

    NotifyDataSetChanged Recycler 视图:Recycler 时无法调用此方法

  27. 27

    在调用notifyDataSetChanged的同时,如何处理listView行上的单击?

  28. 28

    在自定义适配器notifyDataSetChanged上获取NullPointerException

  29. 29

    在共享首选项中的存储列表上应用 notifyDataSetChanged

热门标签

归档