[英]Calling onCreateOptionsMenu() from multiple views
這可能是由於我對java的工作原理缺乏全面的了解。 還在學習!
假設我們有一個活動,其中包含onCreate代碼。
public class GameActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(new GameMainView(this));
}
}
我們現在有我們的看法。 我的問題是這個。 我想使用onCreateOptionsMenu()的響應來調用GameActivity類和GameMainView類中的子例程。 我將如何訪問這兩個課程? 我知道我可以創建一個專門用於onCreateOptionsMenu()的抽象類,並讓GameActivity和GameMainView重寫它來執行他們所需的操作。 這是唯一的選擇嗎? 是否onCreateOptionsMenu()僅被調用一次? 如果是這樣,在哪里? 如果我在所有地方都覆蓋它,它們會全部執行嗎?
如果您這樣編寫活動:
public class GameActivity extends Activity {
private GameMainView gameMainView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
gameMainView = new GameMainView(this);
setContentView(gameMainView);
}
}
然后,在處理選定菜單選項的方法中,您可以處理活動中的選擇,並將其轉發到視圖上。
您只能在活動類中覆蓋它。 按下按鈕時,在活動中保留對GameMainView的引用,並在視圖中調用方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.