我有一个带有四个选项卡的选项卡式 Activity 。每个选项卡都有自己独特的 fragment 。我想从前三个选项卡收集数据,对其进行分析,然后将分析后的数据发送到第四个选项卡中的 TextView。我该怎么做?
最佳答案
我能想到两种解决方案,
首先,保留 Activity 中所有 4 个选项卡的引用。从您的 fragment 中,您可以使用 getActivity()
访问 Activity 并调用相关的更新函数。
public class YourActivity {
...
public void updateFourthFragment(Object data) {
fourthFragment.update();
}
}
public class FirstFragment {
...
public void onInput() {
((YourActivity) getActivity()).updateFourthFragment(input);
}
}
...
其次,使用事件总线,例如 http://square.github.io/otto/
public class FirstFragment {
...
public void onInput() {
bus.post(new InputEvent(input));
}
}
public class FourthFragment {
...
@Subscribe
public void onInputEvent(InputEvent event) {
handleInput(event.getInput());
}
}
关于java - 将数据从选项卡式 Activity 中的 fragment 发送到 fragment ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37872202/