Android中点击返回键时候,弹出两个Dialog的问题
2018-03-04 17:03
387 查看
项目中需要点击右下角的返回键进行拦截,然后弹出一个Dilaog,代码是这样写的:
getDialog().setOnKeyListener(new DialogInterface.OnKeyListener() {
@Override
public boolean onKey(DialogInterface dialog, int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK ) {
if(mOnGreenBtnStateListen != null){
mOnGreenBtnStateListen.pressLeftBack();
}
return true;
}
return false;
}
});
发现会出现两个Dialog,因为点击返回键的时候,会有两个动作DOWN,UP,所以必须判断是点击的DOWN事件
if(keyCode == KeyEvent.KEYCODE_BACK&&event.getRepeatCount()==0)
这样就设置了只是DOWN的时候执行,就只会走一遍。
getDialog().setOnKeyListener(new DialogInterface.OnKeyListener() {
@Override
public boolean onKey(DialogInterface dialog, int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK ) {
if(mOnGreenBtnStateListen != null){
mOnGreenBtnStateListen.pressLeftBack();
}
return true;
}
return false;
}
});
发现会出现两个Dialog,因为点击返回键的时候,会有两个动作DOWN,UP,所以必须判断是点击的DOWN事件
if(keyCode == KeyEvent.KEYCODE_BACK&&event.getRepeatCount()==0)
这样就设置了只是DOWN的时候执行,就只会走一遍。
相关文章推荐
- Android实现dialog时候弹出软键盘dialog移位问题
- Dialog弹出的时候,禁止点击外部消失和禁用返回键
- Android Dialog 点击弹出框外部 弹出框消失的问题
- Android点击返回键back时弹出对话框Dialog
- dialog弹出,点击back按键无法返回问题解决
- Android点击返回键back时弹出对话框Dialog
- Android 系统点击屏幕Dialog会消失问题处理
- Android Alert Dialog解决点击按钮对话框不关闭的问题
- android 实现子页面点击返回的时候刷新父页面的内容
- android中任何禁止软键盘自动弹出而点击EditText的时候才弹出
- 关于android中两次返回键退出客户端与弹出dialog方式退出客户端代码
- Android 使alertDialog.builder不会点击外面和按返回键消失
- android点击返回按钮时,两个activity的ondestory都被调用了
- Android 使Dialog不会点击外面和按返回键消失
- Android AlertDialog解决点击按钮立即消失的问题
- android在点击EditText的时候始终不弹出软件键盘
- Extjs4.2中Controller重复init,init2次引起点击事件弹出两个窗口的问题
- android弹出dialog的时候播放声音!
- Android 中点击返回键弹出“在按一次退出程序”的做法
- OutLook样式类使用过程,弹出模式对话框时候,鼠标不能点击对话框按钮,的问题。