Android: Как я могу установить слушателя MenuButton?

Я хочу сделать пользовательское действие при нажатии на Menu кнопка по телефону.

Действительно ли возможно установить onClickListener (или подобный) на кнопке и если так, как?

onCreateOptionsMenu только назван в первый раз, когда кнопка нажимается - я уже попробовал это.

14
задан Mat Nadrofsky 19 March 2010 в 15:22
поделиться

3 ответа

Обычно вы не должны отменять поведение MENU , поскольку пользователи ожидают появления меню, однако вы можете использовать что-то вроде этих строк:

/* (non-Javadoc)
 * @see android.app.Activity#onKeyDown(int, android.view.KeyEvent)
 */
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if ( keyCode == KeyEvent.KEYCODE_MENU ) {
        Log.d(TAG, "MENU pressed");
        return true;
    }
    return super.onKeyDown(keyCode, event);
}
30
ответ дан 1 December 2019 в 06:10
поделиться

Но onPrepareOptionsMenu (..) вызывается каждый раз. :)

19
ответ дан 1 December 2019 в 06:10
поделиться

Вы, вероятно, могли бы что-нибудь взломать, используя "OnMenuOpened" или что-то подобное, но я бы не рекомендовал это. Кнопка меню должна использоваться только для отображения меню, поэтому между приложениями существует согласованность.

1
ответ дан 1 December 2019 в 06:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: