我有两个 fragment
:AFragment 和 BFragment。 AFragment 有一个ListView
。 BFragment 有一个 Texview
和一个 Button
。当用户单击 ListView
上的项目时,Afragment 会将 fragment 和 putString
更改为 BFragment。 BFragment 从 Afragment 获取数据并将日期显示到 TextView
。我该怎么办?
最佳答案
您可以使用库 https://github.com/greenrobot/EventBus 。非常简单!!!
EventBus只需3步
定义事件:
public static class MessageEvent { /* Additional fields if needed */ }
准备订阅者:声明并注释您的订阅方法,可以选择指定线程模式:
@Subscribe(threadMode = ThreadMode.MAIN)
public void onMessageEvent(MessageEvent event) {/* Do something */};
注册和取消注册您的订户。例如,在 Android 上, Activity 和 fragment 通常应根据其生命周期进行注册:
@Override
public void onStart() {
super.onStart();
EventBus.getDefault().register(this);
}
@Override
public void onStop() {
super.onStop();
EventBus.getDefault().unregister(this);
}
发布 Activity :
EventBus.getDefault().post(new MessageEvent());
关于java - 单击 fragment ListView 上的项目后如何刷新数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54878496/