b2efcc40d8af7943a15d2fd16caeb55ea17e7239.svn-base 734 B

12345678910111213141516171819202122232425262728293031323334
  1. package eVVM.apk.mvp;
  2. import eVVM.apk.common.MyLazyFragment;
  3. /**
  4. * desc : MVP 懒加载 Fragment 基类
  5. */
  6. public abstract class MvpLazyFragment<P extends MvpPresenter> extends MyLazyFragment implements IMvpView {
  7. private P mPresenter;
  8. @Override
  9. protected void initFragment() {
  10. mPresenter = createPresenter();
  11. mPresenter.attach(this);
  12. mPresenter.start();
  13. super.initFragment();
  14. }
  15. @Override
  16. public void onDestroy() {
  17. if (mPresenter != null) {
  18. mPresenter.detach();
  19. mPresenter = null;
  20. }
  21. super.onDestroy();
  22. }
  23. public P getPresenter() {
  24. return mPresenter;
  25. }
  26. protected abstract P createPresenter();
  27. }