example_menu.xmlMainActivity.java
<?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"> <item android:id="@+id/item1" android:icon="@drawable/ic_icon" android:title="Item 1" app:showAsAction="ifRoom" /> <item android:id="@+id/item2" android:title="Item 2" app:showAsAction="never" /> <item android:id="@+id/item3" android:title="Item 3" app:showAsAction="never"> <menu> <item android:id="@+id/subitem1" android:title="Sub Item 1" /> <item android:id="@+id/subitem2" android:title="Sub Item 2" /> </menu> </item> </menu>
package com.example.application.optionsmenuexample; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; import android.widget.Toast; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.example_menu, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.item1: Toast.makeText(this, "Item 1 selected", Toast.LENGTH_SHORT).show(); return true; case R.id.item2: Toast.makeText(this, "Item 2 selected", Toast.LENGTH_SHORT).show(); return true; case R.id.item3: Toast.makeText(this, "Item 3 selected", Toast.LENGTH_SHORT).show(); return true; case R.id.subitem1: Toast.makeText(this, "Sub Item 1 selected", Toast.LENGTH_SHORT).show(); return true; case R.id.subitem2: Toast.makeText(this, "Sub Item 2 selected", Toast.LENGTH_SHORT).show(); return true; default: return super.onOptionsItemSelected(item); } } }