布局文件大致如下(细节省略掉了):
MainActivity
<android.support.v4.widget.DrawerLayout>
<FrameLayout
</FrameLayout>
<com.carpediem.randy.accountant.main.view.DrawerView>
</com.carpediem.randy.accountant.main.view.DrawerView>
</android.support.v4.widget.DrawerLayout>
MainFragment (加入到MainActivity的FrameLayout中)
<LinearLayout>
<FrameLayout>
</FrameLayout>
<com.carpediem.randy.accountant.main.view.MainTabView/>
</LinearLayout>
现在MainFragment
的FrameLayout
中有一个ExerciseFragment
显示题目列表,DrawerView
中可以切换课程。项目使用MVP架构,模仿google给出的官方demo,MainFragment
,ExerciseFragment
,DrawerView
都有自己的Presenter。
问题是:DrawerView
中切换课程如何通知到ExerciseFragment
。请给出理由和优缺点,我能想到的是EventBus。但希望大牛给出一下MVP框架下的事件传递流程,是否应该通过presenter层层传递呢?这样有什么好处或者坏处吗?