【问题标题】:how to update recyclerview when delete an item from adapter class从适配器类中删除项目时如何更新recyclerview
【发布时间】:2021-01-24 21:23:41
【问题描述】:

大家,我正在使用 android 中的回收器视图,我正在从 firebase 获取数据。问题是当我按下删除按钮时,数据已从 firebase 中删除,但在应用程序中,新列表与旧列表一起添加,但我只想显示不更改回收站视图位置的新列表,仅删除该项目。我在适配器类中做这一切。

    final DatabaseReference referencePost = database.getReference().child("Posts").child(holder.postId);

  referencePost.setValue(null).addOnCompleteListener(new OnCompleteListener<Void>() {
                                            @Override
                                            public void onComplete(@NonNull Task<Void> task) {
                                                if (!task.isSuccessful()) {
                                                    Toast.makeText(holder.itemView.getContext(), "" + Objects.requireNonNull(task.getException()).getMessage(), Toast.LENGTH_SHORT).show();
                                                }
                                                dialog.dismiss();
                                            }
                                        });

【问题讨论】:

  • 向我们展示您正在使用的代码。
  • 我没有发布代码,因为我不知道处理这个问题的逻辑你可以想象一个社交媒体应用程序的情况,我们在右上角有一个包含删除的 3 个点发布选项,当我按下删除按钮时,我应该如何在删除帖子后更新列表,因为列表正在重复而没有删除帖子。
  • 我添加了代码@AlexMamo,您现在可以查看
  • 这段代码中到底有什么不符合您的预期?
  • 当我删除一个帖子时,究竟发生了什么是同一个列表与旧列表连接,但我想在删除所需项目后显示新更新的列表。

标签: android firebase android-studio arraylist android-recyclerview


【解决方案1】:

确保从 Firebase 中的删除过程完成后,您可以添加以下行:

.
.
//Successfully Deleted

notifyDataSetChanged ();

你可以比this阅读更多。

【讨论】:

    猜你喜欢
    • 2020-07-27
    • 2017-09-06
    • 2020-05-07
    • 1970-01-01
    • 1970-01-01
    • 2020-05-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多