背景
在MVP模式下,P是核心控制,Activity被削弱成了View。因为Activity的生命周期应该有Presenter的介入。
何时介入
一、Activity的生命周期
Activity在onCreate, onPause, onResume, onRestart, onStart, onStop, onDestory, onSaveInstanceState(), onRestoreInstanceState()都应有Presenter的介入。
在以往Activity的这些函数,会有大量的逻辑业务。当然Presenter接管之后,也需要做相应的实现。
二、Activity崩溃或者重置
1. 语言改变----导致UI重新刷新
2. 内存不足----导致Activity给干掉
3. 屏幕旋转----导致UI重新刷新
4. 弹出一个新界面或者home或者back键,导致生命周期被触发。
Presenter应该独立于Activity。Activity被重启,要保证Presenter不会被重置。这样才能在Activity返回时,回复正常的UI。
只有当Activity被真正销毁时,对应的Presenter才应该被销毁。
附言
RxXXXX的参与是非常重要的。能极大的简化逻辑处理。