Begginer to Android development. I am developing a application, which have three different tabs. I want to have common menu options. Problem is when menu item is clicked nothing happens. It works when i moved them to activity for first tab.
Here is my TabActivity menu implementation.
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater menuInflater = getMenuInflater();
menuInflater.inflate(R.menu.menu, menu);
return true;
}
@Override
public boolean onMenuItemSelected(int featureId, MenuItem item) {
switch(item.getItemId()) {
case R.id.feedbackEmail:
showDialog(FEEDBACK_DIALOG_ID);
return true;
case R.id.about:
AboutBox.Show(this);
return true;
case R.id.Help:
HelpBox.Show(this);
return true;
case R.id.Preferences:
Intent intent = new Intent(this, Preferences.class);
startActivity(intent);
return true;
case R.id.powerUsage:
startActivity(intentPowerUsage);
return true;
case R.id.close:
Intent homeIntent = new Intent(Intent.ACTION_MAIN);
homeIntent.addCategory( Intent.CATEGORY_HOME );
homeIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
Preferences.cancelNotification(this);
startActivity(homeIntent);
return true;
}
return super.onMenuItemSelected(featureId, item);
}
Here is my menu.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/feedbackEmail"
android:icon="@android:drawable/ic_dialog_email"
android:title="@string/feedback" />
<item android:id="@+id/Help"
android:icon="@android:drawable/ic_menu_help"
android:title="@string/menu_help" />
<item android:id="@+id/Preferences"
android:icon="@android:drawable/ic_menu_preferences"
android:title="@string/preferences" />
<item android:id="@+id/about"
android:icon="@android:drawable/ic_menu_info_details"
android:title="@string/menu_about" />
<item android:id="@+id/powerUsage"
android:icon="@android:drawable/ic_menu_today"
android:title="@string/powerUsage" />
<item android:id="@+id/close"
android:icon="@android:drawable/ic_menu_close_clear_cancel"
android:title="@string/exit" />
</menu>
You can do in like this,
Create an Activity named
BaseActivityand put this Menu code in thatBaseActivity, then extends all theActivitythat you want to have menu. You can check this answer for further reference that overridesonKeyDown()for every Activity.