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);
}
}