Android AlertDialog 点击区域外不可取消,点击返回键可以与 Activity 同时撤销
Android 大约 1045 字AlertDialog 属性设置
点击区域外不可取消,点击返回键可以与Activity
同时撤销
public void initAlertDialog() {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
View view = View.inflate(this, R.layout.dialog_view, null);
builder.setView(view);
final AlertDialog alertDialog = builder.create();
view.findViewById(R.id.btn).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
alertDialog.dismiss();
//点击之后对话框消失,实现业务逻辑
}
});
alertDialog.setCanceledOnTouchOutside(false);//对话框区域外点击无效,但是可以点击返回键
alertDialog.setOnKeyListener(new DialogInterface.OnKeyListener() {//监听返回键,与activity同时销毁,否则会先dismiss再finish
@Override
public boolean onKey(DialogInterface dialog, int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
finish();
dialog.dismiss();//要达到同时销毁效果,可在finish()后dismiss,如果不dismiss,dialog会leak。
}
return false;
}
});
alertDialog.show();
}
阅读 5267 · 发布于 2019-04-10
————        END        ————
Give me a Star, Thanks:)
https://github.com/fendoudebb扫描下方二维码关注公众号和小程序↓↓↓

昵称:
随便看看
换一批
-
Spring Boot 单元测试 @WebMvcTest 对 Controller 进行单独测试阅读 1004
-
Android ContentProvider批量插入数据阅读 4104
-
Go 中的 GOROOT 和 GOPATH阅读 4390
-
算法:无重复字符的最长子串阅读 1085
-
Spring Boot 单元测试 MockMvc 模拟 HTTP 请求阅读 1313
-
GoJS Diagram 去掉选中黑色边框阅读 2104
-
为什么 HashMap 长度必须是 2 的 n 次幂阅读 1260
-
IDEA .editorconfig 代码风格设置阅读 164
-
Go 字符串与字节数组互相转换阅读 4284
-
算法:冒泡排序阅读 1011