HiActivity.java 源代码


package base;

import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.graphics.Color;
import android.graphics.drawable.Drawable;
import android.os.Build;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
import butterknife.ButterKnife;
import com.android.tu.loadingdialog.LoadingDailog;
import com.githang.statusbar.StatusBarCompat;
import com.hichip.callback.ICameraPlayStateCallback;
import com.hichip.campro.R;
import com.hichip.control.HiCamera;
import common.HiDataValue;
import custom.dialog.Effectstype;
import custom.dialog.WarningDialogBuilder;
import utils.AppManager;
import utils.DialogUtils;
import utils.HiTools;

public abstract class HiActivity extends FragmentActivity implements ICameraPlayStateCallback {
    public AlertDialog.Builder mDlgBuilder;
    public Dialog mJhLoading;
    public Dialog mLoadDialoging;

    public void callbackPlayUTC(HiCamera hiCamera, int i) {
    }

    public void callbackPlayUTC2(HiCamera hiCamera, int i, int i2) {
    }

    public void callbackPlayUTC2Dual(HiCamera hiCamera, int i, int i2, int i3) {
    }

    public void callbackPlayUTCDual(HiCamera hiCamera, int i, int i2) {
    }

    public void callbackRecordState(HiCamera hiCamera, int i, int i2, int i3, String str) {
    }

    public void callbackRecordStateDual(HiCamera hiCamera, int i, int i2, int i3, int i4, String str) {
    }

    public void callbackState(HiCamera hiCamera, int i, int i2, int i3) {
    }

    public void callbackStateDual(HiCamera hiCamera, int i, int i2, int i3, int i4) {
    }

    protected abstract void init(Bundle bundle);

    protected void initWindow() {
    }

    protected abstract int setLayoutId();

    @Override
    public void onCreate(Bundle bundle) {
        super.onCreate(bundle);
        setContentView(setLayoutId());
        AppManager.getInstance().addActivity(this);
        StatusBarCompat.setStatusBarColor((Activity) this, Color.parseColor("#FFFFFF"), true);
        ButterKnife.bind(this);
        initWindow();
        init(bundle);
    }

    public boolean hideBottomUIMenu() {
        if (!HiTools.checkDeviceHasNavigationBar(this) || HiTools.getNavigationBarHeight(this) <= 0 || !HiDataValue.isNavigationBarExist || Build.VERSION.SDK_INT < 21) {
            return false;
        }
        getWindow().addFlags(1024);
        getWindow().getDecorView().setSystemUiVisibility(5638);
        return true;
    }

    public void showBottomUIMenu() {
        if (!HiTools.checkDeviceHasNavigationBar(this) || HiTools.getNavigationBarHeight(this) <= 0 || !HiDataValue.isNavigationBarExist || Build.VERSION.SDK_INT < 21) {
            return;
        }
        getWindow().clearFlags(1024);
        getWindow().getDecorView().setSystemUiVisibility(0);
        StatusBarCompat.setStatusBarColor((Activity) this, Color.parseColor("#00FFFFFF"), true);
    }

    @Override
    public void finish() {
        super.finish();
        overridePendingTransition(R.anim.out_to_right, R.anim.in_from_left);
    }

    public void finish(int i) {
        super.finish();
        if (i == 1) {
            overridePendingTransition(R.anim.in_act_my, R.anim.act_anim_bot_out);
        }
    }

    @Override
    public void startActivityForResult(Intent intent, int i) {
        super.startActivityForResult(intent, i);
        overridePendingTransition(R.anim.in_from_right, R.anim.out_to_left);
    }

    public void startActivityForResult(Intent intent, int i, int i2) {
        super.startActivityForResult(intent, i);
        if (i2 == 1) {
            overridePendingTransition(R.anim.act_anim_bot_in, R.anim.out_act_my);
        } else {
            overridePendingTransition(R.anim.in_act_my, R.anim.out_act_my);
        }
    }

    public void startActivity(Intent intent, boolean z) {
        super.startActivity(intent);
        if (z) {
            overridePendingTransition(R.anim.in_act_my, R.anim.act_anim_bot_out);
        } else {
            overridePendingTransition(R.anim.in_act_my, R.anim.out_act_my);
        }
    }

    @Override
    public void startActivity(Intent intent) {
        super.startActivity(intent);
        overridePendingTransition(R.anim.in_act_my, R.anim.out_act_my);
    }

    public void startActivity(Intent intent, int i) {
        super.startActivity(intent);
        if (i == 1) {
            overridePendingTransition(R.anim.act_anim_bot_in, R.anim.out_act_my);
        } else {
            overridePendingTransition(R.anim.in_act_my, R.anim.out_act_my);
        }
    }

    public void showAlert(CharSequence charSequence) {
        WarningDialogBuilder warningDialogBuilder = WarningDialogBuilder.getInstance(this);
        warningDialogBuilder.withMessage(charSequence).isCancelable(true).isCancelableOnTouchOutside(true).withEffect(Effectstype.Shake);
        warningDialogBuilder.show();
    }

    public void showjuHuaDialog() {
        if (this.mJhLoading == null) {
            this.mJhLoading = DialogUtils.createLoadingDialog(this, true, true);
        }
        if (isFinishing()) {
            return;
        }
        this.mJhLoading.show();
    }

    public void showjuHuaDialog(boolean z) {
        if (this.mJhLoading == null) {
            this.mJhLoading = DialogUtils.createLoadingDialog(this, z, z);
        }
        if (isFinishing()) {
            return;
        }
        this.mJhLoading.show();
    }

    public void dismissjuHuaDialog() {
        if (this.mJhLoading != null && !isFinishing()) {
            this.mJhLoading.dismiss();
        }
        this.mJhLoading = null;
    }

    public void showLoadDialog(String str, boolean z, boolean z2) {
        if (this.mLoadDialoging == null) {
            this.mLoadDialoging = new LoadingDailog.Builder(this).setMessage(str).setCancelable(z2).setCancelOutside(z).create();
            if (isFinishing()) {
                return;
            }
            this.mLoadDialoging.show();
            return;
        }
        if (isFinishing()) {
            return;
        }
        this.mLoadDialoging.show();
    }

    public void dismissLoadDialog() {
        Dialog dialog = this.mLoadDialoging;
        if (dialog != null) {
            if (dialog.isShowing() && !isFinishing()) {
                this.mLoadDialoging.dismiss();
            }
            this.mLoadDialoging = null;
        }
    }

    public void showYesNoDialog(int i, DialogInterface.OnClickListener onClickListener) {
        new AlertDialog.Builder(this).setMessage(getResources().getString(i)).setTitle(R.string.tips_warning).setPositiveButton(getResources().getString(R.string.btn_yes), onClickListener).setNegativeButton(getResources().getString(R.string.btn_no), onClickListener).show();
    }

    public void showAlertnew(Drawable drawable, CharSequence charSequence, CharSequence charSequence2, CharSequence charSequence3, CharSequence charSequence4, DialogInterface.OnClickListener onClickListener) {
        if (this.mDlgBuilder == null) {
            AlertDialog.Builder builder = new AlertDialog.Builder(this);
            this.mDlgBuilder = builder;
            builder.setIcon(drawable);
            this.mDlgBuilder.setTitle(charSequence);
            this.mDlgBuilder.setMessage(charSequence2);
            this.mDlgBuilder.setPositiveButton(charSequence4, onClickListener).setNegativeButton(charSequence3, onClickListener).show();
        }
    }

    @Override
    public void onDestroy() {
        super.onDestroy();
        AppManager.getInstance().killActivity(this);
    }
}