Commit 06d0a34a authored by 王海's avatar 王海

修改dialog关闭情况

parent cbe7ff36
...@@ -55,6 +55,8 @@ public abstract class BaseDialog<P extends BasePresenter, B extends ViewDataBind ...@@ -55,6 +55,8 @@ public abstract class BaseDialog<P extends BasePresenter, B extends ViewDataBind
public boolean isShowing; public boolean isShowing;
private long recLen = -1; private long recLen = -1;
private boolean shutDown = false; private boolean shutDown = false;
//强制关闭时间
long time = 0;
static { static {
AppCompatDelegate.setCompatVectorFromResourcesEnabled(true); AppCompatDelegate.setCompatVectorFromResourcesEnabled(true);
...@@ -302,17 +304,23 @@ public abstract class BaseDialog<P extends BasePresenter, B extends ViewDataBind ...@@ -302,17 +304,23 @@ public abstract class BaseDialog<P extends BasePresenter, B extends ViewDataBind
} }
} }
/** /**
* 强制关闭dialog * 强制关闭dialog
*/ */
public void toughDismiss() { public void toughDismiss() {
if (shutDown) { if (shutDown) {
if (recLen <= 0) { if (System.currentTimeMillis() - time < 500) {
dismiss(); dismiss();
} else { } else {
ToastUtils.showLong(recLen + "s 后可关闭"); if (recLen <= 0) {
dismiss();
} else {
ToastUtils.showLong(recLen + "s 后可关闭,双击返回按钮可强制关闭");
}
} }
time = System.currentTimeMillis();
} }
} }
...@@ -343,5 +351,4 @@ public abstract class BaseDialog<P extends BasePresenter, B extends ViewDataBind ...@@ -343,5 +351,4 @@ public abstract class BaseDialog<P extends BasePresenter, B extends ViewDataBind
mBaseBinding.btnConfirm.setText(OK); mBaseBinding.btnConfirm.setText(OK);
return this; return this;
} }
} }
\ No newline at end of file
...@@ -31,10 +31,10 @@ public class LoadingDialog extends BaseDialog<BasePresenter, DialogLoadingBindin ...@@ -31,10 +31,10 @@ public class LoadingDialog extends BaseDialog<BasePresenter, DialogLoadingBindin
this.getDialog().setOnKeyListener(new DialogInterface.OnKeyListener() { this.getDialog().setOnKeyListener(new DialogInterface.OnKeyListener() {
@Override @Override
public boolean onKey(DialogInterface dialogInterface, int i, KeyEvent keyEvent) { public boolean onKey(DialogInterface dialogInterface, int i, KeyEvent keyEvent) {
if (i == keyEvent.KEYCODE_BACK) { if (i == keyEvent.KEYCODE_BACK && keyEvent.getAction() == KeyEvent.ACTION_DOWN) {
toughDismiss(); toughDismiss();
} }
return true; return false;
} }
}); });
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment