Ajouter le même menu contextuel à plusieurs activités
Je suis à essayer de comprendre comment inclure commun des morceaux de code dans de multiples activités.
Plus précisément, j'ai un menu de contexte que je voudrais inclure dans plusieurs activités.
J'ai vu cela, mais il suffit de ne pas comprendre comment l'étendre à de multiples activités.
http://developer.android.com/guide/topics/ui/menus.html
J'ai configuré comme Menu.java
public class Menu extends Activity{
//bottom menus
public static final int Menu1 = 1;
public static final int Menu2 = 2;
public static final int Menu3 = 3;
public static final int Menu4 = 4;
public static final int Menu5 = 5;
public static final int Menu6 = 6;
public static final int Menu7 = 7;
///Creates the menu items
public boolean onCreateOptionsMenu(Menu menu) {
menu.add(0, Menu3, 0, "Create Profile").setIcon(
this.getResources().getDrawable(R.drawable.ic_menu_add));
menu.add(0, Menu5, 0, "Log In").setIcon(
this.getResources().getDrawable(R.drawable.ic_menu_login));
menu.add(0, Menu2, 0, "Settings").setIcon(
this.getResources().getDrawable(R.drawable.ic_menu_preferences));
menu.add(0, Menu4, 0, "About").setIcon(
this.getResources().getDrawable(R.drawable.ic_menu_help));
menu.add(0, Menu1, 0, "Report A Bug").setIcon(
this.getResources().getDrawable(R.drawable.ic_menu_start_conversation));
menu.add(0, Menu6, 0, "New Stuff").setIcon(
this.getResources().getDrawable(R.drawable.ic_menu_view));
return true;
}
private MenuItem add(int i, int menu32, int j, String string) {
//TODO Auto-generated method stub
return null;
}
//Handles item selections from preference menu
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case Menu1:
startActivity(new Intent(this, Bug.class));
return true;
case Menu2:
startActivity(new Intent(this, EditPreferences.class));
return true;
case Menu3:
startActivity(new Intent(this, CreateAccount.class));
return true;
case Menu4:
startActivity(new Intent(this, About.class));
return true;
case Menu5:
startActivity(new Intent(this, Login.class));
return true;
case Menu6:
startActivity(new Intent(this, NewAdditions.class));
return true;
}
return false;
}
}
source d'informationauteur user401183
Vous devez vous connecter pour publier un commentaire.
si vous souhaitez ajouter des mêmes fonctionnalités dans plus de 1 que de créer 1 activité commune
comme BaseActivity et étendre cette activité comprendra que des fonctions de base de votre hérité de toutes les activités
par exemple, j'ai appelé checklogin fonction , vous pouvez mettre votre code de menu ici,
maintenant, vous pouvez étendre vos activités de
Vous pouvez définir un menu dans un fichier xml, puis charger le menu en onCreateOptionsMenu. Vous aurez toujours besoin de traiter chaque élément de menu dans chaque activité. Vous pouvez également créer un BaseActivity classe qui gère le menu des trucs que chaque Activité peut s'étendre.
Essayez d'utiliser un
abstract
classeMaintenant étendre la classe
BaseMenu
au lieu deActivity
Je Pense que cela pourrait vous aider.