簡體   English   中英

從多個視圖調用onCreateOptionsMenu()

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM