【问题标题】:Master-details: how to notify master RecycleView activity of change that requires reloadingMaster-details:如何通知主 RecycleView 活动需要重新加载的更改
【发布时间】:2016-05-01 00:37:09
【问题描述】:

Android 中的主细节:

我在 MainActivity 中有一个 RecycleView,每个项目都有一行。当用户单击一行时,会加载详细信息活动,他可以在其中更改内容。

问题是,当我回到主 Activity 时:

finish()

我必须在 MainActivity 的 onResume 方法上刷新 RecycleView 的适配器:

@Override
public void onResume() {
    Log.d("onResume", "yes");

    super.onResume();

    mAdapter.notifyDataSetChanged();
}

这感觉像是一种浪费,因为并非总是会发生变化(我知道,这很不科学)。

回到“下方”活动,我还有哪些其他选择?我应该使用 Intent 返回 MainActivity 吗?我应该使用单例来传递 didChange 标志吗?也许我通过的模型上有一个 didChange 标志?

【问题讨论】:

    标签: java android master-detail


    【解决方案1】:

    您可以使用startActivityForResult 开始您的详细活动,如果项目已更改,则在此处设置RESULT_OK,然后仅在设置此标志时通知onActivityResult 中的适配器。也可以打电话给notifyItemChanged,而不是打电话给notifyDataSetChanged

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多