0

Android アプリを作成しました。メイン クラスをクリーンアップするために、メニュー オプションに関連するコードを別のクラスに配置し、メイン クラスでそれを参照したいと考えています。どうやったらできるんだろうと思ってた!ここに私のコードがあります:

package com.behzadmoradi.farnooshandbehzad;

import android.app.Activity;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Toast;

public class ActivityMenu extends Activity {

// Reference to the menus

public static final int menuExit = 1;
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    menu.add(0, menuExit, 1, "Exit").setIcon(
            android.R.drawable.star_big_off);
    return super.onCreateOptionsMenu(menu);

}

// Reference to the menu items
@Override
public boolean onMenuItemSelected(int featureId, MenuItem item) {
    switch (item.getItemId()) {
        case menuExit :
            finish();
            Toast.makeText(this, "Good Bye", Toast.LENGTH_LONG).show();
    }
    return super.onMenuItemSelected(featureId, item);
}

}
4

1 に答える 1

0

ここでコンセプトを混ぜていると思います。メインクラスをクリーンアップしたい場合は、他のより一般的なメソッドを外部クラスに移動する必要がありますが、アクティビティには移動しないでください!

多くのアクティビティで同じメニューを使用している場合は、そのメソッドを宣言し、他のアクティビティから継承するジェネリック アクティビティを作成することもできます。

そうでない場合は、このコードを見て、コードを明確にするためにメインのアクティビティ内にコードを残します。

于 2013-04-17T09:09:26.793 に答える