在提出这个问题之前,我在StackOverflow上尝试了与此主题相关的许多解决方案,但是有些解决方案令人困惑,而且某些解决方案不起作用可能是Android版本问题。
因此,我提出了这个问题,请在活动开始时帮助我禁用后退,最近的应用按钮,电源按钮,家庭和家庭长按按钮。
答案应该在 android 4.4.x到以上版本。
感谢。
答案 0 :(得分:0)
你试过onBackPressed()函数吗?
@Override
public void onBackPressed()
{
// code here to show dialog
super.onBackPressed(); // optional depending on your needs
}
当活动检测到用户按下后退键时,将调用onBackPressed()
功能。
developer.android.com
我正在使用它来禁用活动上的按下按钮。
对于其他类似电源按钮的按钮,您可以尝试以下代码。
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (event.getKeyCode() == KeyEvent.KEYCODE_POWER) {
// do what you want with the power button
return true;
}
return super.onKeyDown(keyCode, event);
}
OR
@Override
public boolean dispatchKeyEvent(KeyEvent event) {
if (event.getKeyCode() == KeyEvent.KEYCODE_POWER) {
Intent i = new Intent(this, ActivitySetupMenu.class);
startActivity(i);
return true;
}
return super.dispatchKeyEvent(event);
}
您需要找到Android KeyEvent。 KeyEvent.html