2013-02-27 85 views
1

我正在使用onCreateContextMenu來禁用其中一個菜單項,並且我還使用onPrepareOptionsMenu來啓用菜單項。但由於某些原因,onPrepareOptionMenu永遠不會由系統啓動。我在2.3版本中運行我的代碼。由於它不工作,我想知道onPrepareOptionsMenu與ContextMenu一起工作?onPrepareOptionsMenu與ContextMenu一起工作嗎?

什麼可能是錯的?幫助是preciated!

回答

0

(OptionsMenu != ContextMenu)

onPrepareOptions菜單已於3.0中引入,因爲創建操作欄中的菜單隻有一次(動作條創建過程中),並在打開之前僅僅是「準備」的權利。

對於環境下,你應該只使用onCreateContextMenu

+0

你有什麼建議,我怎麼可以啓用/運行時的上下文菜單中禁用菜單項? – 2013-02-27 10:05:26

+0

我認爲onCreateContextMenu在每次菜單打開時都會調用(在該實例中,您可以啓用/禁用單個菜單項。要完全禁用上下文,您可以調用unregisterContextMenu(http://developer.android.com/reference/ android/app/Activity.html#unregisterForContextMenu(android.view.View)) – Budius 2013-02-27 10:15:33

+0

好吧,我認爲onCreateContextMenu只調用一次!?但現在我在方法內添加了一個if語句來檢查一個布爾值, – 2013-02-27 10:41:29

相關問題