BaseActivity.java 1.86 KB
package com.lotus.town;

import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
import android.os.Message;
import android.support.annotation.Nullable;

import com.lotus.town.dialog.Dialog;
import com.umeng.analytics.MobclickAgent;
import com.umeng.message.PushAgent;


public abstract class BaseActivity extends Activity{
    protected Context mContext;
    protected Dialog mDialog;
    protected boolean canDialogDismiss = true;

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        PushAgent.getInstance(this).onAppStart();
        MobclickAgent.onResume(this);
        mContext = this;
    }

    protected Handler mHandler = new Handler(Looper.getMainLooper()){
        @Override
        public void handleMessage(Message msg) {
            HandleMessage(msg);
        }
    };


    protected void HandleMessage(Message msg){


    }

    protected Dialog getDialog() {
        if (mDialog == null) {
            mDialog = new Dialog();
        }
        canDialogDismiss = false;
        new Handler().postDelayed(new Runnable() {
            @Override
            public void run() {
                canDialogDismiss = true;
            }
        },3000);
        return mDialog;
    }

    protected void dismissDialog() {
        if (mDialog != null) {
            mDialog.dismiss(this);
        }
    }

    @Override
    protected void onPause() {
        super.onPause();
        MobclickAgent.onPause(this);
    }

    @Override
    public void onBackPressed() {
        if(canDialogDismiss) {
            if (mDialog != null && mDialog.isShowing()) {
                mDialog.onBackPress();
                mDialog.dismiss(this);
            } else {
                super.onBackPressed();
            }
        }
    }
}