我只是想要選項菜單切換我的滑動菜單,但沒有找到選項按鈕的標準點擊偵聽器。 OnPrepareOptionsMenu是單擊選項按鈕時觸發的唯一方法嗎?我真的不想使用這個方法,因爲這個方法在應用程序啓動時也會被觸發。on OptionsMenu click listener
0
A
回答
1
UPDATE:爲菜單按鈕(硬件按鈕),您可以使用事件的onkeyup:
public boolean onKeyUp(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_MENU) {
if (event.getAction() == KeyEvent.ACTION_UP)
{
Log.d("onkeyup", "onkeyup");
return true;
}
}
return super.onKeyUp(keyCode, event);
}
注意:下面的解決方案是爲動作條
只是覆蓋onOptionsItemSelected
功能。 然後,您可以監聽所有的菜單項單擊事件,並觸發您根據案件需要採取的措施:
這裏是一個主要活動類的例子:
@Override
public boolean onOptionsItemSelected(MenuItem item){
switch(item.getItemId()) {
case R.id.menu_calendar:
makeToast("Loading...");
openCalendar();
break;
case R.id.menu_search:
makeToast("Loading...");
openSearch();
break;
case R.id.menu_settings:
openSettings();
break;
case R.id.menu_help:
openHelp();
break;
case R.id.menu_about:
mBackupManager.dataChanged();
openAbout();
break;
}
return true;
}
1
您需要Override
菜單按鈕,這樣當用戶點擊菜單時,代碼就會被執行,而不是打開菜單。像這樣
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_MENU) {
//Put the code for an action menu from the top here
return true;
}
return super.onKeyDown(keyCode, event);
}
相關問題
- 1. EditText on click listener
- 2. click on listener on android widget按鈕
- 3. Bitmaps Click Click Listener
- 4. BlackBerry BitmapField on focus change and click listener
- 5. RecyclerView項目Click Click Listener
- 6. 如何在Item Click Listener上設置查看傳呼機? Set On Click Listener無法正常工作
- 7. 偏好活動偏好Click Click Listener
- 8. 無法在item click on listener上獲取gridView
- 9. Set on Click Listener for custom view崩潰應用程序
- 10. 如何使用On Click Listener轉到不同的xml佈局?
- 11. Drillup Button Click Listener - Vaadin Charts
- 12. Javascript click Listener獲取類
- 13. click for listener for dynaically added imageview
- 14. FBReader Opensource onOptionsSelected to Button click listener
- 15. Redis on message listener triggered triggered
- 16. tableViewController on button click
- 17. jquery select on click
- 18. getUserMedia on click
- 19. setFocusable on button click
- 20. Actionscript On Mouse Click
- 21. 如何將Click Listener添加到ListView?
- 22. click on work on IE9 ruby webdriver
- 23. ng-click on current tag
- 24. jQuery on click prepend divs'list'
- 25. click - only on「direct」onclicks
- 26. Jquery slideDown on Button Click
- 27. listview startactivty on click item
- 28. Jquery .on('click','button'not working
- 29. Jquery.Load on click not working
- 30. jQuery off('click')。on('click')dirty-fix or legit?
但是這個方法在點擊選項菜單右邊的項目時被調用?我想要一個方法在點擊選項菜單btn時被調用。每個Android設備上的一個。 – 2013-05-13 08:41:56
你正在談論舊的物理按鈕?屏幕右下方的菜單按鈕? – 2013-05-13 08:43:50
是的。 (有時在左側,例如Samsung Galaxy S2) – 2013-05-13 08:46:37