2

こんにちは、読んでくれてありがとう。

初めてプロジェクトを作成したとき、Android Studio からボイラー プレートを選択するように求められました。空のアクティビティ (FAB などを含まないアクティビティ) を選択しました。それでも、私のアプリには がありActionBarますが、名前だけが表示されます。次に、そのアクション バーを変更してメニューを追加します。私のJavaは拡張AppCompatActivityするので、アクションバーがあります。ただし、以前のEclipseでの経験とは異なり、見つけることができるメニューxmlはありません。

他の方法でアクションを追加または変更するにはどうすればよいですか? 手動で追加できますか?

ありがとう!

4

1 に答える 1

1

/res/menu/main_menu.xml 1)アクションを作成するには、メニューリソースファイルを作成(または存在する場合は変更)する必要があります。

例えば:

<menu xmlns:android="http://schemas.android.com/apk/res/android" >

    <item
        android:id="@+id/action_refresh"
        android:showAsAction="always"
        android:icon="@drawable/ic_action_refresh"
        android:title="Refresh"/>
    <item
        android:id="@+id/action_settings"
        android:showAsAction="always"
        android:icon="@drawable/ic_action_setting"
        android:title="Settings">
    </item>

</menu> 

2) アクティビティでオーバーライドonCreateOptionsMenu()して、XML で定義されたアクションを拡張できるようにします。

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.main_menu, menu);
    return true;
} 

onOptionsItemSelected()3)アクションの選択に反応するようにオーバーライドします。

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {

    case R.id.action_refresh:
      Toast.makeText(this, "Refresh selected", Toast.LENGTH_SHORT).show();
      break;

    case R.id.action_settings:
      Toast.makeText(this, "Settings selected", Toast.LENGTH_SHORT).show();
      break;
    }

    return true;
}
于 2016-02-08T23:01:02.860 に答える