关于Fragment之间通信的设计问题,有一个疑问:为什么有些人使用相对复杂的回调模式来实现监听器,而不是直接使用类的静态方法调用方法(类似于某些方法/属性使用单例)?是否有性能问题,或者这只是一种“糟糕”的Android / Java面向对象编程实践?因此,两个方向进行简单通信的方法可能是:
MyActivity activity
Fragment A
Fragment B
static method canBeCalledFromAnywhere() {}
method activityMethod()
call FragmentA.doSomething();
call FragmentB.doSomething();
FragmentA
onCreate()
onMe = this;
static method doSomething()
do something with static or use onMe for instance;
method oneMethodFragmentA()
call MyActivity.canBeCalledFromAnywhere();
FragmentB
onCreate()
onMe = this;
static method doSomething()
do something with static or use onMe for instance;
method oneMethodFragmentB()
call MyActivity.canBeCalledFromAnywhere();