我對Android非常陌生,所以很抱歉如果我的問題看起來很基本。我昨晚都在查找它,並找不到解決方案(這讓我覺得我可能在我試圖實現的方面存在根本性缺陷)。將變量傳遞給onOptionsItemSelected
基本上,我想從onOptionsItemSelected中調用一個方法。在Android開發者文檔(http://developer.android.com/guide/topics/ui/menus.html)他們給這個例子:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle item selection
switch (item.getItemId()) {
case R.id.new_game:
newGame();
return true;
case R.id.help:
showHelp();
return true;
default:
return super.onOptionsItemSelected(item);
}
}
然而,在我的申請,我有需要的輸入法通過onOptionsItemSelected調用。在我從Android開發者網站上使用的例子的情況下,這將等同於我希望整數「敏」傳遞給newGame方法:
@Override
public boolean onOptionsItemSelected(MenuItem item, int myint) {
// Handle item selection
switch (item.getItemId()) {
case R.id.new_game:
newGame(myint);
return true;
case R.id.help:
showHelp();
return true;
default:
return super.onOptionsItemSelected(item);
}
}
當我這樣做,Eclipse附帶了一個錯誤的行「公共布爾onOptionsItemSelected(MenuItem項目){」說我需要刪除「@Override」命令。
我一直沒有找到任何互聯網上的例子,人們通過onOptionsItemSelected(或像onConfigurationChanged這樣的方法)傳遞變量,這就是爲什麼我認爲我可能對這個工作有一個基本的誤解。不幸的是,我不確定從何處着手解決這個問題。目前我使用的是「公共靜態」變量,所以我的方法(本例中爲newGame)可以訪問它們,但我意識到這些類型的變量的使用似乎通常被忽略。
如果有人能夠幫助我,甚至指向我需要搜索/閱讀的方向,我將非常感激。
感謝
斯蒂芬
這是你的菜單的代碼?你在做遊戲嗎? –
這只是我從Android開發者網站上獲得的一個例子。我的實際應用是一個詞彙測試應用程序。使用谷歌的無雜亂代碼似乎更容易,我知道它是無差錯的! – Stephen