2011-05-03 111 views
1

當用戶點擊菜單按鈕時,我呈現幾個菜單項。其中之一是註銷按鈕。我希望能夠根據我正在跟蹤的布爾值來更改「登錄」和「退出」之間的文本。我如何以編程方式更改菜單中的文本?如何以編程方式更改選項菜單中的項目?

+0

做 「this._menu =菜單;」在你自己的方法中做「MenuItem item = _menu .findItem(1); item.setTitle(」test「);」 – 2015-09-20 19:07:18

回答

3

您想覆蓋活動中的onPrepareOptionsMenu函數。有一個菜單參數通過,你可以簡單地找到你想要顯示/隱藏的菜單項(或更改圖像和文本)並返回true。

onPrepareOptionsMenu

在 「onCreateOptionsMenu」 方法
+0

完美 - 比onOptionsItemSelected()更改項目要好得多! – 2012-11-19 19:19:59

3

覆蓋/實施onPrepareOptionsMenu(...)回調。根據您的登錄狀態更改您添加的內容。

另外,我還沒有測試過這個,但在我看來它的工作原理是:當您創建菜單項時,請在類變量中保留登錄/註銷項的句柄,然後通過調用setTitle(...)需要。

相關問題