Android中的主要细节:
我在MainActivity中有一个RecycleView,每个项目都有一行。当用户点击一行时,会加载一个详细信息活动,他可以在那里更改内容。
事情是,当我回到主要活动:
finish()
我必须在MainActivity的onResume方法上刷新RecycleView的适配器:
@Override
public void onResume() {
Log.d("onResume", "yes");
super.onResume();
mAdapter.notifyDataSetChanged();
}
这感觉就像浪费一样,并不总是发生变化(非常不受欢迎,我知道)。
我还有哪些选择可以追溯到“下方”的活动?我应该使用Intent返回MainActivity吗?我应该使用单例来传递didChange标志吗?也许在我传递的模型上有一个didChange标志?
答案 0 :(得分:1)
您可以使用startActivityForResult
启动详细活动,并在项目更改时设置RESULT_OK,然后仅在设置此标志时通知onActivityResult
中的适配器。另外,您可以拨打notifyItemChanged
notifyDataSetChanged