読者です 読者をやめる 読者になる 読者になる

Androidプログラミングブログ

Androidプログラミングを勉強していく中でわかったことをメモする

【Androidプログラミング入門 #019】オプションメニューを表示する

はじめに

オプションメニューを表示します。

オプションメニューとは?
タイトルバーの右にあるやつです。
f:id:fjswkun:20151103194826p:plain

1. プロジェクトの作成

f:id:fjswkun:20151103194503p:plain

f:id:fjswkun:20151103194522p:plain

f:id:fjswkun:20151103194535p:plain

f:id:fjswkun:20151103194551p:plain

2. メニューのレイアウトの作成

ファイル追加

menuフォルダの中にmenuファイルを作成します。

f:id:fjswkun:20151103195256p:plain

menuファイルの中身を書く

itemタグを追加するとメニュー内の選択項目を増やすことができます。

<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools" tools:context=".MainActivity">
    <item
        android:id="@+id/action_settings"
        android:title="@string/action_settings"
        android:orderInCategory="100"
        app:showAsAction="never" />
    <item
        android:id="@+id/action_help"
        android:title="Help"
        android:orderInCategory="101"
        app:showAsAction="never" />
</menu>

3. アクティビティでオプションメニューを表示するソースを書く

MainActivity.javaを開きます。 メニューで表示された項目をタップするとトースト表示されるようにしました。

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.menu_main, menu);
    return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // Handle action bar item clicks here. The action bar will
    // automatically handle clicks on the Home/Up button, so long
    // as you specify a parent activity in AndroidManifest.xml.
    int id = item.getItemId();

    //noinspection SimplifiableIfStatement
    if (id == R.id.action_settings) {
        Toast.makeText(this, "設定", Toast.LENGTH_SHORT).show();
        return true;
    }else if(id == R.id.action_help){
        Toast.makeText(this, "ヘルプ!", Toast.LENGTH_SHORT).show();
        return true;
    }

    return super.onOptionsItemSelected(item);
}

4. 実行

実行します。

f:id:fjswkun:20151103200029p:plain

f:id:fjswkun:20151103200037p:plain

Helpを押してみます。
トーストでヘルプ!と表示されます。
f:id:fjswkun:20151103200046p:plain

うまく実行できなかった方はこちらからサンプルを
ダウンロードして確認してみてください。

SampleOptionMenu.zip - Google ドライブ

参考情報

参考

Androidアプリ開発逆引きレシピ (PROGRAMMER’S RECiPE)

Androidアプリ開発逆引きレシピ (PROGRAMMER’S RECiPE)

開発用デバイス

Androidの勉強をはじめた人は知っているようにエミュレーターはちょー遅い。
開発用に安いAndroidを買えば、勉強がはかどります!
iPhoneと比較すると安いので買ったほうがいいと思います。

おすすめデバイス

勉強用に使うだけなので価格が高い最新デバイスは必要ないと思います。
最新のデバイスは一人前のAndroidプログラマーになったら購入を検討しましょう。

nexus5 16GBASUS Nexus7 ( 2013 ) TABLET

その他に探すなら↓から。
Android nexus5を勉強用に購入