我有一个正在使用主题的活动。对话框样式,使其成为另一个活动上方的浮动窗口。但是,当我在对话框窗口外(在后台活动上)单击时,对话框关闭。我怎样才能阻止这种行为?
当前回答
也可以分配不同的动作实现onCancelListener:
alertDialog.setOnCancelListener(new DialogInterface.OnCancelListener(){
@Override
public void onCancel(DialogInterface dialogInterface) {
//Your custom logic
}
});
其他回答
为了防止对话框在返回键按下时被取消,使用这个
dialog.setCancelable(false);
为了防止对话框在外部触摸时消失,使用这个
dialog.setCanceledOnTouchOutside(false);
当在onCreate中使用dialog作为一个活动时,添加这个
setFinishOnTouchOutside(false);
对我来说有用的是创建DialogFragment并将其设置为不可取消:
dialog.setCancelable(false);
builder.setCancelable(假);
Mensaje(视图v){
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("¿Quieres ir a el Menú principal?");
builder.setMessage("Al presionar SI iras a el menú y saldras de la materia.");
builder.setPositiveButton("SI", null);
builder.setNegativeButton("NO", null);
builder.setCancelable(false);
builder.show();
}
使用这个代码,它为我工作
AlertDialog.Builder alertDialog = new AlertDialog.Builder(this);
alertDialog.setCancelable(false);
推荐文章
- Java Regex捕获组
- Openssl不被视为内部或外部命令
- 如何添加自定义方法到Spring Data JPA
- 如何在Ubuntu中设置Java环境路径
- 无法执行dex:在Eclipse中超过GC开销限制
- 有人能解释一下JPA和Hibernate中的mappedBy吗?
- 是什么导致JNI调用变慢?
- Java中的&和&&有什么区别?
- 使用Java的Collections.singletonList()?
- 如何以编程方式将视图添加到视图
- 单击url会打开默认浏览器
- Maven使用多个src目录编译
- 导入时无法解析符号
- 使用Retrofit刷新OAuth令牌,而不修改所有调用
- 多个dex文件定义了landoid /support/v4/accessibilityservice/AccessibilityServiceInfoCompat