项目中出现了“dialog显示的瞬间,activity关闭,导致dialog闪退”,用回调函数解决了这一问题,虽然后边也没这么用吧,简单记录一下。
dialog文件中:
public interface OnDialogXxxListener {
void onSuccess();
void onFail();
}
private static OnDialogXxxListener xxxlistner;
public static void setOnDialogXxxListener(OnDialogXxxListener listener) {
xxxlistner = listener;
}
在需要的地方调用
permissionlistner.onSuccess();
permissionlistner.onFail();
并编写:
DialogUtil.OnDialogXxxListener xxxlistner = new DialogUtil.OnDialogXxxListener() {
@Override
public void onSuccess() {
((XxxActivity) mContext).finish(); //执行activity关闭
}
@Override
public void onFail() {
//失败执行dialog弹窗
}
};
DialogUtil.setOnDialogXxxListener(permissionlistner);