Я пытаюсь вызвать onKeyDown () основного действия с помощью KEYCODE_BACK, чтобы он вел себя так, как если бы я сам нажал кнопку «назад». Я делаю это с помощью следующего кода:
KeyEvent goBackDown = new KeyEvent(0,0,KeyEvent.ACTION_DOWN,KeyEvent.KEYCODE_BACK,0,0);
goBackDown.dispatch(activity);
SystemClock.sleep(50); // as if human pressed the key
KeyEvent goBackUp = new KeyEvent(0,0,KeyEvent.ACTION_UP,KeyEvent.KEYCODE_BACK,0,0);
goBackUp.dispatch(activity);
Моя операция onKeyDown () в настоящее время вызывает только:
return super.onKeyDown(keyCode, event);
Тем не менее, в отличие от настоящей кнопки «Назад», когда вызывается «поддельный» код, действие отказывается выполнять стать невидимым.
Почему?