Menu(Resource)

We can make menu from resource file.

Steps

Prepare res/menu and create xml resource(name is arbitrary)

Sample

Menu Layout(mymenu.xml)

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@+id/item1" android:title="Atsuko Maeda">
    </item>
    <group android:id="@+id/group1" android:checkablebehavior="single">
         
        <item android:id="@+id/group_item1" android:title="Haruka Shimazaki">
        </item>
         
        <item android:id="@+id/group_item2" android:title="Mayu Watanabe">
        </item> 
    </group>
     
    <item android:id="@+id/submenu" android:title="NMB">
        <menu>
            <item android:id="@+id/submenu_item1" android:title="Sayaka Yamamoto">
            </item>
        </menu>
    </item>
 
</menu>

Code

public class ResourceMenuActivity extends Activity 
{
    @Override
    protected void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
    }
 
    @Override
    public boolean onCreateOptionsMenu(Menu menu) 
    {
        // MenuInflator
        MenuInflater menuInflater = getMenuInflater();
        // Get XML
        menuInflater.inflate(R.menu.mymenu, menu);
        return super.onCreateOptionsMenu(menu);
    }
     
    @Override
    public boolean onOptionsItemSelected(MenuItem item) 
    {
        boolean ret = true;
         
        switch ( item.getItemId() )
        {
        case R.id.item1:
            Log.v("expert", "Acchan");
            break;
        case R.id.group_item1:
            Log.v("expert", "Paruru");
            break;
        case R.id.group_item2:
            Log.v("expert", "Mayuyu");
            break;
        case R.id.submenu_item1:
            Log.v("expert", "Sayanee");
            break;
        }
        return ret;
    }
}