Android onKeyDown和onKeyUp阻止onBackPressed

Android onKeyDown和onKeyUp阻止onBackPressed,android,onkeydown,onkeyup,onbackpressed,Android,Onkeydown,Onkeyup,Onbackpressed,起初,我在活动中重写了onBackPressed。使用此方法,我可以正确捕获按下后退按钮的事件。后来,为了检测音量按钮的按下和释放动作,我实现了onKeyDown和onkeydup方法。然后我发现无论我从onKeyDown和onKeyUp返回true还是false,onBackPressed方法都从未被触发。有人知道如何使onBackPressed和onKeyDown、onkeydup都被调用吗?非常感谢您的帮助 正如我在评论中所说的,这是因为您忘记添加默认值:return super.disp

起初,我在活动中重写了onBackPressed。使用此方法,我可以正确捕获按下后退按钮的事件。后来,为了检测音量按钮的按下和释放动作,我实现了onKeyDown和onkeydup方法。然后我发现无论我从onKeyDown和onKeyUp返回true还是false,onBackPressed方法都从未被触发。有人知道如何使onBackPressed和onKeyDown、onkeydup都被调用吗?非常感谢您的帮助

正如我在评论中所说的,这是因为您忘记添加
默认值:return super.dispatchKeyEvent(event)


为了更好的解释,只需看看这个例子,我相信你已经忘记添加
默认值:return super.dispatchKeyEvent(event)你完全正确。dispatchKeyEvent修复了我的问题。默认情况下,我返回的是super.onKeyUp(keyCode,event)和onKeyDown(keyCode,event),它们不会将事件传递给onBackPressed方法。我认为您可以将答案张贴在答案区域中,以便我可以将其作为已接受的答案打勾。