Android中点击返回键时候,弹出两个Dialog的问题

项目中需要点击右下角的返回键进行拦截,然后弹出一个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的时候执行,就只会走一遍。

你可能感兴趣的:(android,Dialog2遍)