Real Time Android Development
- makeiton




How to Create Android Menus



In android application menu is one of the important user interface entity which provides some action options for a particular view. In this tutorial i am discussing about creating android menus.

In this tutorial we are creating a simple menu with 6 menu items. On clicking on single menu item a simple Toast message will be shown.

1. Create a new project File ⇒ New ⇒ Android Project and give activity name as AndroidMenusActivity.
2. Now create an XML file under res/layout folder and name it as menu.xml.
3. Open menu.xml file and type following code. In the following code we are creating a single menu with 6 menu items. Each menu item has an icon and title for display the label under menu icon. Also we have id for each menu item to identify uniquely.

» menu.xml
<? xml version = "1.0" encoding = "utf-8" ?>
< menu xmlns:android = "http://schemas.android.com/apk/res/android" >
     <!-- Single menu item
          Set id, icon and Title for each menu item
     -->
     < item android:id = "@+id/menu_bookmark"
           android:icon = "@drawable/icon_bookmark"
           android:title = "Bookmark" />
 
     < item android:id = "@+id/menu_save"
           android:icon = "@drawable/icon_save"
           android:title = "Save" />
 
     < item android:id = "@+id/menu_search"
           android:icon = "@drawable/icon_search"
           android:title = "Search" />
 
     < item android:id = "@+id/menu_share"
           android:icon = "@drawable/icon_share"
           android:title = "Share" />
 
     < item android:id = "@+id/menu_delete"
           android:icon = "@drawable/icon_delete"
           android:title = "Delete" /> 
 
     < item android:id = "@+id/menu_preferences"
           android:icon = "@drawable/icon_preferences"
           android:title = "Preferences" />
</ menu >

4. Now open your main Activity class file (AndroidMenusActivity.java) and type following code. In the following code each menu item is identified by its ID in switch case statement.

» AndroidMenusActivity.java
package com.androidhive.androidmenus;
 
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.widget.Toast;
 
public class AndroidMenusActivity extends Activity {
     @Override
     public void onCreate(Bundle savedInstanceState) {
         super .onCreate(savedInstanceState);
         setContentView(R.layout.main);
     }
      
     // Initiating Menu XML file (menu.xml)
     @Override
     public boolean onCreateOptionsMenu(Menu menu)
     {
         MenuInflater menuInflater = getMenuInflater();
         menuInflater.inflate(R.layout.menu, menu);
         return true ;
     }
      
     /**
      * Event Handling for Individual menu item selected
      * Identify single menu item by it's id
      * */
     @Override
     public boolean onOptionsItemSelected(MenuItem item)
     {
          
         switch (item.getItemId())
         {
         case R.id.menu_bookmark:
             // Single menu item is selected do something
             // Ex: launching new activity/screen or show alert message
             Toast.makeText(AndroidMenusActivity. this , "Bookmark is Selected" , Toast.LENGTH_SHORT).show();
             return true ;
 
         case R.id.menu_save:
             Toast.makeText(AndroidMenusActivity. this , "Save is Selected" , Toast.LENGTH_SHORT).show();
             return true ;
 
         case R.id.menu_search:
             Toast.makeText(AndroidMenusActivity. this , "Search is Selected" , Toast.LENGTH_SHORT).show();
             return true ;
 
         case R.id.menu_share:
             Toast.makeText(AndroidMenusActivity. this , "Share is Selected" , Toast.LENGTH_SHORT).show();
             return true ;
 
         case R.id.menu_delete:
             Toast.makeText(AndroidMenusActivity. this , "Delete is Selected" , Toast.LENGTH_SHORT).show();
             return true ;
 
         case R.id.menu_preferences:
             Toast.makeText(AndroidMenusActivity. this , "Preferences is Selected" , Toast.LENGTH_SHORT).show();
             return true ;
 
         default :
             return super .onOptionsItemSelected(item);
         }
     }   
 
}

5. Finally run your project by right clicking on your project folder ⇒ Run As ⇒ 1 Android Application to test your application. On Android Emulator click on Menu Button to launch menu.

The final output of menu tutorial will be like below image

Menus Output

Things to Learn


Android adding Facebook Comments Widget in App Android Creating Gmail Like Inbox using RecyclerView Android Downloading File by Showing Progress Bar
How to make Text to Speech in Android Android How to Add Fingerprint Authentication Android Working with WebView Building a Simple In App Browser
Flash light App Android Example Simple Notepad App Android Example Android Splash Screen Example