Я пытаюсь переопределить поведение кнопки меню аппаратного обеспечения на Android, чтобы открыть меню переполнения в ActionBar.Открытое меню переполнения с кнопкой меню оборудования
Благодаря this question, я могу отображать меню переполнения в ActionBar. Но когда я нажимаю кнопку аппаратного меню, вместо этого открывается меню «нормальное» (внизу экрана) меню переполнения.
Я попытался изменить это, переопределив onKeyDown(int, KeyEvent)
в моем Activity
, но он не работает.
if (keyCode == KeyEvent.KEYCODE_MENU) {
// I am extending android.support.v7.app.ActionBarActivity
this.getSupportActionBar().openOptionsMenu();
return true;
}
После исследования, кажется, что getSupportActionBar()
возвращает экземпляр android.support.v7.internal.app.WindowDecorActionBar
, что возвращение ложным в openOptionsMenu()
вместо того, чтобы открыть меню.
Есть ли другой способ достичь этого? Может быть, вызвать прямой щелчок на значке переполнения? Но как я могу получить к нему доступ?