Android中的AlertDialog弹出框在被点击时, 无论点击哪个按钮都会关闭窗口。

但是有时候我们不需要它关闭,例如输入用户名和密码,输错了,提示重新输入。

那么怎么做到点击确定或者取消按钮不关闭对话框呢?

直接上代码

new AlertDialog.Builder(this)

.setTitle(R.string.SBCfgPasswordTitle)

.setView(passwdEditText)

.setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {

@Override

public void onClick(DialogInterface dialogInterface, int i) {

canCloseDialog(dialogInterface, false);//不关闭对话框

}

})

.setNeutralButton(android.R.string.cancel, new DialogInterface.OnClickListener() {

@Override

public void onClick(DialogInterface dialogInterface, int i) {

//To change body of implemented methods use File | Settings | File Templates.

canCloseDialog(dialogInterface, true);//关闭对话框

}

})

.show();

// 关键部分在这里

private void canCloseDialog(DialogInterface dialogInterface, boolean close) {

try {

Field field = dialogInterface.getClass().getSuperclass().getDeclaredField("mShowing");

field.setAccessible(true);

field.set(dialogInterface, close);

} catch (Exception e) {

e.printStackTrace();

}

}

android弹出确认对话点击取消,Android 点击AlertDialog上的确定和取消按钮,使对话框不消失...相关推荐

  1. android弹出确认对话点击取消,Android点击返回按钮弹出确认消息对话框

    将以下方法加入到自己想要实现该功能的Activity下即可 @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if ( ...

  2. 在JSP中,点击网页某个按钮或者超链接执行某些需要确认的命令时,弹出确认框如下效果: 如果点击确定,则执行要操作的命令。如果点击取消则不执行。 实现步骤: 1:在jsp,或者html

    如下效果: 如果点击确定,则执行要操作的命令.如果点击取消则不执行. 实现步骤: 第1步 在jsp,或者html页面的的<head></head>标签之间添加如下js代码: & ...

  3. android点击按钮弹出输入框,android 弹出框(输入框和选择框)

    1.输入框: final EditText inputServer = new EditText(this); inputServer.setFilters(new InputFilter[]{new ...

  4. php实现删除功能,点击删除弹出确认框,点确定删除数据,点取消返回。删除了商品后总价要相应的改变

    1.连接数据库: 2. 订单信息从product数据库下computers表调出不分页显示在网页product.php; 实现删除功能,点击删除弹出确认框,点确定删除数据,点取消返回.删除了商品后总价 ...

  5. odoo点击按钮弹出确认操作提示框

    odoo按钮实现点击弹出提示确认操作并显示提示内容,点击确认执行按钮操作,点击取消不执行按钮操作 解决方式: 在button标签中写上confirm属性如下: <button name=&quo ...

  6. C#点击关闭按钮 弹出确认框

    0. 引言 C#点击关闭按钮弹出确认框共两种方法实现 一种重写系统的方法,一种更改关闭按钮事件的方法 1. 方法1:重写关闭方法 //重写关闭窗口按钮方法 protected override voi ...

  7. Android --- 进入页面时,不弹出软键盘。当 EditText 被点击时不弹出软键盘,而是调用其他选择器,比如时间选择器等

    功能需求: 1.进入页面时,不弹出软键盘 2.当 EditText 被点击时不弹出软键盘,而是调用其他选择器,比如时间选择器等 搜索百度测试: 1.百度上说用 editText.setInputTyp ...

  8. 批量删除,未勾选数据,点击【批量删除】弹出确认删除提示框

    批量删除,未勾选数据,点击[批量删除]弹出确认删除提示框 给table组件,添加ref="selections" 在分页方法中,添加方法.设置为空

  9. html弹窗是否删除,javascript删除前弹出确认/取消询问窗口confirm

    为了避免误删数据,删除前应该不要嫌麻烦弹出一个确认/取消询问窗口,以前免错删数据后无法恢复.网站的数据删除由用 户在客户端发起,所以弹出确认/取消询问窗口由javascript来完成,它弹出的询问窗口 ...

最新文章

  1. 使用Redisson优雅关闭订单
  2. 高级持续性威胁检测无法检测出自定义恶意软件?
  3. 字符串相关处理kmp,前缀数,后缀树,后缀数组,最长回文串,最长重复字串,最长非重复字串
  4. HDU3183(RMQ问题,ST算法)
  5. 三大主流消息中间件优缺点
  6. tensorflow系列之1:加载数据
  7. Vue-watch选项
  8. 如何使用JavaScript删除CSS属性?
  9. Camera--V4L2驱动学习记录
  10. iOS 关于布局问题的一些认识
  11. php数据库随机选择,php – 在MySQL数据库中选择两个随机行
  12. 树莓派计算机组装,Samytronix Pi:用树莓派 DIY 的桌面计算机
  13. 【VBA】Str与CStr辨析
  14. ebay 后台HTML有尺寸宽度要求吗,Ebay后台有哪些常用的操作页面?
  15. 世界那么大,你又怎么能看的完呢
  16. Pat(Advanced Level)Practice--1054(The Dominant Color)
  17. 通过VBA宏合并Excel工作表
  18. 一个很好用的gif动态图控件:GifImageView
  19. pythons_pythons是什么意思_pythons怎么读_pythons翻译_用法_发音_词组_同反义词_巨蛇_大蟒( python的名词复数 )-新东方在线英语词典...
  20. MySQL--入门篇:MySQL入门必会知识 Windows安装MySQL的zip包 一步一步带你图解安装MySQL过程 详细图解MySQL语句

热门文章

  1. 抖店-多功能脚本-油猴脚本
  2. 弥补斯坦福70亿参数「羊驼」短板,精通中文的大模型来了,已开源
  3. 华为鸿蒙典故,“鸿蒙”现世,这些中国风的橱窗让人惊艳!
  4. 微信小程序开发——小程序的宿主环境API,协同工作和发布
  5. AutoSAR软件组件开发的两类工作流程(Matlab/Simulink)
  6. mysql操作数据库语句大全_常用的Mysql数据库操作语句大全整理
  7. Java安装教程:如何安装java环境?
  8. Android五大布局——LinearLayout、RelativeLayout
  9. js判断是否为mac电脑还是windows操作系统
  10. java xfire指定参数名_xfire中自定义参数名