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.
The final output of menu tutorial will be like below image
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 asAndroidMenusActivity.
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.
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.
<? xml version = "1.0" encoding = "utf-8" ?> <!-- 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.
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.
No comments:
Post a Comment