2

各アクティビティに独自のメニュー項目に加えて必要な基本メニュー項目を定義するスーパークラス アクティビティが必要です。

これまでの私のコードは次のとおりです。

public abstract class SuperActivity extends FragmentActivity {

    protected List<TextView> textView = new ArrayList<TextView>();

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(getContentResource());

        setTextViews(textView);

    }

    protected abstract void setTextViews(List<TextView> textViews);

    protected abstract int getContentResource();

    @Override
    public boolean onCreateOptionsMenu(Menu menu)
    {
            getMenuInflater().inflate(R.menu.menuitemsforallsubclasses, menu);
    return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
        case R.id.basicmenuitem1:
            allSubclassActivitiesCanDoThis()
            return true;
        case R.id.basicmenuitem2:
            allSubclassActivitiesCanDoThis2()
            return true;

        }
    }
}

サブクラスでは、onCreateOptionsMenu (追加のレイアウト ファイル) と onOptionsItemSelected に何かを追加するだけですが、それは正しいですか? ここで間違った方向に進んでいないことを確認したいだけです。同じアクティビティで複数のレイアウト ファイルをロードすることさえ可能でしょうか?

参考までに: なぜ私がアクティビティに TextView 配列を持っているのか疑問に思っている場合: これに加えて、各サブクラス アクティビティのすべての TextView を ArrayList に入れたいので、それらすべてにリスナーを自動的に追加していつわかるようにしますか?アクティビティで何かが変更された、または他のきちんとしたことを行うために。

私がしていることは可能ですか?複数のメニュー レイアウト ファイルを読み込むことはできますか?

4

0 に答える 0