package com.basic.security.widget;
|
|
import android.app.Dialog;
|
import android.content.Context;
|
import android.os.Bundle;
|
import android.util.DisplayMetrics;
|
import android.view.LayoutInflater;
|
import android.view.View;
|
import android.view.Window;
|
import android.view.WindowManager;
|
import android.widget.Button;
|
import android.widget.TextView;
|
|
import com.basic.security.utils.Constants;
|
import com.basic.security.utils.ExceptionUtil;
|
import com.basic.security.utils.SystemUI;
|
|
public class ConfirmDialog extends Dialog {
|
private Context context;
|
private String title;
|
private String leftBtnText;
|
private String rightBtnText;
|
private ClickListenerInterface clickListenerInterface;
|
|
public ConfirmDialog(Context context, String title, String leftBtnText, String rightBtnText) {
|
super(context, com.basic.security.utils.RUtils.R_style_ConfirmDialogStyle);
|
this.context = context;
|
this.title = title;
|
this.leftBtnText = leftBtnText;
|
this.rightBtnText = rightBtnText;
|
}
|
|
protected void onCreate(Bundle savedInstanceState) {
|
super.onCreate(savedInstanceState);
|
init();
|
}
|
|
public void init() {
|
LayoutInflater inflater = LayoutInflater.from(context);
|
View view = inflater.inflate(com.basic.security.utils.ResolutionAdaptation.confirm_dialog(), null);
|
setContentView(view);
|
TextView tvTitle = view.findViewById(com.basic.security.utils.RUtils.R_id_title);
|
Button tvConfirm = view.findViewById(com.basic.security.utils.RUtils.R_id_leftBtn);
|
TextView tvCancel = view.findViewById(com.basic.security.utils.RUtils.R_id_rightBit);
|
tvTitle.setText(title);
|
tvConfirm.setText(leftBtnText);
|
tvCancel.setText(rightBtnText);
|
tvConfirm.setOnClickListener(new clickListener());
|
tvCancel.setOnClickListener(new clickListener());
|
Window dialogWindow = getWindow();
|
WindowManager.LayoutParams lp = dialogWindow.getAttributes();
|
DisplayMetrics d = context.getResources().getDisplayMetrics();
|
if (Constants.landscape) {
|
lp.width = (int) (d.widthPixels * 0.6);
|
} else {
|
lp.width = (int) (d.widthPixels * 0.8);
|
}
|
dialogWindow.setAttributes(lp);
|
SystemUI.hideSystemUI(this);
|
SystemUI.initSystemUIListener(this);
|
}
|
|
public void show() {
|
try {
|
this.getWindow().getDecorView().setVisibility(View.INVISIBLE);
|
SystemUI.hideSystemUI(this);
|
SystemUI.initSystemUIListener(this);
|
super.show();
|
this.getWindow().getDecorView().setVisibility(View.VISIBLE);
|
} catch (Exception e) {
|
ExceptionUtil.printException(e);
|
}
|
}
|
|
public void setClickListener(ClickListenerInterface clickListenerInterface) {
|
this.clickListenerInterface = clickListenerInterface;
|
}
|
|
public interface ClickListenerInterface {
|
void doConfirm();
|
|
void doCancel();
|
}
|
|
private class clickListener implements View.OnClickListener {
|
public void onClick(View v) {
|
int id = v.getId();
|
switch (id) {
|
case com.basic.security.utils.RUtils.R_id_leftBtn:
|
clickListenerInterface.doConfirm();
|
break;
|
case com.basic.security.utils.RUtils.R_id_rightBit:
|
clickListenerInterface.doCancel();
|
break;
|
}
|
}
|
}
|
}
|