Android 关闭窗口的设备回按事件
我已经创建了一个窗口,并通过广播接收器将其显示在屏幕上。但问题是,它出现在屏幕上,我想在按下“后退”按钮后将其关闭。我无法在此视图上获取按钮按下事件。我的“后退”代码如下所示-Android 关闭窗口的设备回按事件,android,back-button,softkeys,Android,Back Button,Softkeys,我已经创建了一个窗口,并通过广播接收器将其显示在屏幕上。但问题是,它出现在屏幕上,我想在按下“后退”按钮后将其关闭。我无法在此视图上获取按钮按下事件。我的“后退”代码如下所示- view.setOnKeyListener(new View.OnKeyListener() { @Override public boolean onKey(View v, int keyCode, KeyEvent event) { if (event.ge
view.setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (event.getKeyCode() == KEYCODE_BACK) {
Log.d("LOG", "back button is pressed");
}
return true;
}
});
但是什么也没有发生。我试图通过DISPATCHKEY执行相同的操作,但也没有用。请帮助我解决我没有解决的问题。这对视图不起作用吗?维护窗口的全局引用并覆盖onBackPressed() 试试这个:
@Override
public void onBackPressed() {
if (view != null && view.isShowing()) {
view.dismiss();
} else {
super.onBackPressed();
}
}
可能会有帮助。这不在活动中。它在广播接收器中。因此OnBackPressed无法实现。