1

Android アプリケーションにメニュー項目を追加しました。

コードは次のとおりです。

public boolean onCreateOptionsMenu(Menu menu)
{       
    menu.add(1, 1, 0, "Item 1");  
    return true;
}

ユーザーがメニュー項目をクリックしたときに警告ダイアログを表示する必要があります。

警告ダイアログの私のコード

final Activity activity = this;
AlertDialog alertDialog = new AlertDialog.Builder(activity).create();
alertDialog.setTitle("Item 1");         
alertDialog.setMessage("This is Item 1");           
alertDialog.show();
4

1 に答える 1

1

オーバーライドしonOptionsItemSelectedます。アイテム ID は 1 です。スイッチ ケースを使用して diloag を表示します。

     @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
            case 1:
                AlertDialog alertDialog = new AlertDialog.Builder(ActivityName.this).create(); // You can use activity context directly.
                alertDialog.setTitle("Item 1");         
                alertDialog.setMessage("This is Item 1");           
                alertDialog.show();
                return true;
            default:
                return super.onOptionsItemSelected(item);
        }
    }

public abstract MenuItem add (int groupId, int itemId, int order, CharSequence title)

API レベル 1 で追加 メニューに新しい項目を追加します。このアイテムは、そのラベルに指定されたタイトルを表示します。

パラメーター

groupId このアイテムが属するグループ ID。これを使用して、バッチ状態変更のアイテムのグループを定義できます。項目をグループに含めない場合は、通常 NONE を使用します。

itemId 一意のアイテム ID。一意の ID が必要ない場合は、NONE を使用してください。order アイテムの注文。順序を気にしない場合は、NONE を使用してください。getOrder() を参照してください。

title アイテムに表示するテキスト。

戻り値

新しく追加されたメニュー項目。

public boolean onOptionsItemSelected (MenuItem item)

API レベル 1 で追加

このフックは、オプション メニューの項目が選択されるたびに呼び出されます。デフォルトの実装では、単に false を返すだけで、通常の処理が行われます (必要に応じて、アイテムの Runnable を呼び出すか、その Handler にメッセージを送信します)。このメソッドは、他の機能を使用せずに処理したいアイテムに対して使用できます。

派生クラスは、基本クラスを呼び出して、デフォルトのメニュー処理を実行する必要があります。

パラメータ item 選択されたメニュー項目。

戻り値

boolean 通常のメニュー処理を続行するには false を返し、ここで使用するには true を返します。

于 2013-07-14T03:34:20.973 に答える