为recyclerview更新帖子的评论数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为recyclerview更新帖子的评论数相关的知识,希望对你有一定的参考价值。

活动A具有一个回收站视图,该视图的每一行都包含一个帖子,现在每个帖子都有一个评论计数文本视图,该视图会启动评论活动,用户可以在其中查看评论并添加评论。

现在的问题是,添加评论后,当评论活动结束或按返回按钮返回帖子页面时,如何在活动A的回收者视图的特定行中更新评论计数。但我不想再次重新加载回收器视图,因为它会使用户从当前位置分散注意力。

请引导我朝正确的方向前进。下面是我的Recyclerview适配器代码段。

public void onBindViewHolder(RecyclerView.ViewHolder viewHolder, int position) {
        int viewType = getItemViewType(position);
        final Posts posts = postsList.get(position);
        final viewHolderPost viewHolderPost = (viewHolderPost) viewHolder;

        viewHolderPost.commentcount_wrap.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        Intent intent = new Intent(v.getContext(), CommentViewerActivity.class);
                        intent.putExtra("post_id", posts.getPost_id());
                        v.getContext().startActivity(intent);
                    }
                });
}
答案

您可以使用startActivityForResult代替startActivity

参考:https://developer.android.com/reference/android/app/Activity#startActivityForResult(android.content.Intent,%20int,%20android.os.Bundle)

因此,当CommentActivity完成时,先前的活动将收到作为CommentActivity结果的回调,您将处理该结果并更新recyclerview的适配器。

希望有帮助。 :)

另一答案

您可以通知适配器特定位置有更改。检查:adapter.notifyItemChanged(1)

以上是关于为recyclerview更新帖子的评论数的主要内容,如果未能解决你的问题,请参考以下文章

从片段类中的对话框添加项目到recyclerview。

从RecyclerView适配器更新活动或片段的视图

更新片段中的 RecyclerView

scrollToPosition(),使用片段更新RecyclerView时

在动态 viewpager 片段中创建 recyclerviews

LeetCode:Database 72.每个帖子的评论数