MVP实战具体版改版1
2016-05-06 11:06:58 0 举报
MVP具体实战改版1,可以使Frag额P互相都可以随意更换
作者其他创作
大纲/内容
IV
void udateView(String )
IBaseP
//还是一个抽象类
+abstract udateView(final String )*abstract View onCreateViewFromChild(……)
WatchFrag
//具体实现类,扩随意扩展
+udateView(final String )+View onCreateViewFromChild(……)
WatchP
+getCurrentTime()+registerEventBus()+unRegisterEventBus()
Frag和P应该要解耦。此处考虑桥接模式,且需要在Frag进入生命周期之前把P接进去
IContract
//用户根据实际定义接口
IM
+void currentTime()
为了Frag和P解耦现在只有IM接口可以集成到具体类然后删除接口,其余IP和IV都要根据具体业务保留抽象接口
P监听M层消息
刷新/select
IBaseV
向底层的请求
WatchM
-WatchM()+static WatchM getInstance()+void currentTime()
AbBaseP
+Reference mViewRef
+void attacheView(T view)+void detachView()+abstract void registerEventBus()+abstract void unRegisterEventBus()+T getView()
EventBus
IP
+void getCurrentTime()
状态反馈
除了getView,其余的函数都是要在frag的生命周期中调用的
Activity
管理具体的V和P
+T mPresenter
+setPresenterFromActivity(T t)+final View onCreateView(……)*abstract View onCreateViewFromChild(……)
刷新M层状态
IP_Watch extends AbBaseP
+abstract getCurrentTime()+abstract void registerEventBus()+abstract void unRegisterEventBus()
调用M层功能
0 条评论
下一页