android 如何让dialog不消失,即使是用户按了返回键dialog也不消失
2015-01-27 16:36
429 查看
android 如何让dialog不消失,即使是用户按了返回键dialog也不消失
解决的问题:软件提示升级的dialog时候,用户有可能按了返回键,但是现在的需求是用户只能按“确定升级”或者“暂时不升级”这两个按钮才能拿dialog消失,按返回键不能使dialog消失
方案:截取activity的 onkeydown事件,而应该截取dialog的key响应事件,当dialog在前台显示的时候,keylistener首先会派发到dialog里面,在那里面监听就行了。
先申明一个keylistener。
在把这个listener注册到dialog里面去 当初始化dialog的时候
setCancelable(false),作用是当dialog弹出来的时候,如果触点在dialog外围,按照默认的方式 dialog将消失。如果这个设为false的话 这种情况dialog就不会消失了。
解决的问题:软件提示升级的dialog时候,用户有可能按了返回键,但是现在的需求是用户只能按“确定升级”或者“暂时不升级”这两个按钮才能拿dialog消失,按返回键不能使dialog消失
方案:截取activity的 onkeydown事件,而应该截取dialog的key响应事件,当dialog在前台显示的时候,keylistener首先会派发到dialog里面,在那里面监听就行了。
先申明一个keylistener。
OnKeyListener keylistener = new DialogInterface.OnKeyListener(){ public boolean onKey(DialogInterface dialog, int keyCode, KeyEvent event) { if (keyCode==KeyEvent.KEYCODE_BACK&&event.getRepeatCount()==0) { return true; } else { return false; } } } ;
在把这个listener注册到dialog里面去 当初始化dialog的时候
builder.setTitle(getText(R.string.XXXX)) .setMessage(getText(R.XXXXXX)) .setOnKeyListener(key).setCancelable(false) .setPositiveButton(android.R.string.ok, someOKButtonListener) .setNegativeButton(android.R.string.cancel, null);
setCancelable(false),作用是当dialog弹出来的时候,如果触点在dialog外围,按照默认的方式 dialog将消失。如果这个设为false的话 这种情况dialog就不会消失了。
相关文章推荐
- android 如何让dialog不消失,即使是用户按了返回键dialog也不消失
- Android 如何让dialog不消失,即使是用户按了返回键dialog也不消
- 如何让Dialog在用户按下返回键也不消失
- Android 开发中 如何使dialog 在按了返回键时 也不消失dismiss
- 如何让Dialog在用户按下返回键也不消失
- Android 使Dialog不会点击外面和按返回键消失
- Android 使alertDialog.builder不会点击外面和按返回键消失
- Android使alertDialog.builder不会点击外面和按返回键消失的方法
- Android 使alertDialog.builder不会点击外面和按返回键消失
- Android 设置dialog 点击返回键及屏幕不消失
- Android 使alertDialog.builder不会点击外面和按返回键消失
- [Android UI界面] 请问如何让dialog不消失
- Android AlertDialog解决点击按钮立即消失的问题
- android中如何取得用户手机的常用联系人(即收藏夹的联系人)
- android 软键盘 返回键 消失事件 监听
- 如何使Dialog可以通过点击其他区域消失
- 浅析android中的权限管理--用户安装的apk的uid,gid是如何分配的
- android 如何设置dialog的透明度
- android 自定义dialog弹出和消失动画
- android alertdialog的按钮点击后不消失