由於客戶的要求,需要屏蔽返回鍵,程式退出的功能,但由於程式始終需要一個退出方式,所以我使用長按返回鍵退出來實現。
剛開始在網上找了在onKeyDown裡面實現。但是發覺在真機裡面,雖然我長按了返回鍵能使程式不顯示,但是不能讓程式退出。
public boolean onKeyDown(int kCode, KeyEvent kEvent) {
switch (kCode) {
case KeyEvent.KEYCODE_DPAD_LEFT: {
return true;
}
case KeyEvent.KEYCODE_DPAD_UP: {
return true;
}
case KeyEvent.KEYCODE_DPAD_RIGHT: {
return true;
}
case KeyEvent.KEYCODE_DPAD_DOWN: {
return true;
}
case KeyEvent.KEYCODE_DPAD_CENTER: {
return true;
}
case KeyEvent.KEYCODE_BACK: {
return false;
}
}
return super.onKeyDown(kCode, kEvent);
}
最後經過修改,實現長按實現程式徹底退出的功能
public boolean dispatchKeyEvent(KeyEvent event)
{
int keyCode=event.getKeyCode();
switch(keyCode)
{
case KeyEvent.KEYCODE_BACK: {
if(event.isLongPress())
{
this.stopService(intent);
System.exit(0);
return true;
}else
{
boolean flag=false;
return flag;
}
}
}
return super.dispatchKeyEvent(event);
}