package com.mm.android.deviceaddmodule.mobilecommon.base.mvp; import android.content.Context; import android.os.Bundle; import android.support.annotation.Nullable; import android.text.TextUtils; import com.mm.android.deviceaddmodule.R; import com.mm.android.deviceaddmodule.mobilecommon.base.BaseActivity; import com.mm.android.deviceaddmodule.mobilecommon.eventbus.event.BaseEvent; /** * æš‚æ— éœ€æ±‚ã€‚ * MVP模å¼Activity基类,继承自common模å—基类Acitivity,实现BaseViewä¸é€šç”¨æŽ¥å£ï¼Œæ‰€æœ‰MVP模å¼çš„Activity需继承自æ¤ç±»ã€‚ */ public abstract class BaseMvpActivity<T extends IBasePresenter> extends BaseActivity implements IBaseView { protected abstract void initLayout(); //åˆå§‹åŒ–布局 protected abstract void initView(); //åˆå§‹åŒ–控件 protected abstract void initData(); //åˆå§‹åŒ–æ•°æ® protected T mPresenter; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); initLayout(); initView(); initPresenter(); initData(); } @Override protected void onDestroy() { if(mPresenter != null) mPresenter.unInit(); super.onDestroy(); } public Context getContextInfo() { return this; } public boolean isViewActive() { return !isActivityDestory(); } public void showToastInfo(String msg) { toast(msg); } public void showToastInfo(int msgId) { toast(msgId); } public void showToastInfo(int msgId, String errorDesc) { if (!TextUtils.isEmpty(errorDesc)) { toast(errorDesc); } else { toast(msgId); } } public void showProgressDialog() { showProgressDialog(R.layout.mobile_common_progressdialog_layout); } public void cancelProgressDialog() { dissmissProgressDialog(); } @Override public void unInit() { } @Override public void onMessageEvent(BaseEvent event) { } @Override public void initPresenter() { } }