2010-11-23 2 views
0

J'ai créé un ContextMenu personnalisé. Mais quand j'appelle le menu, le menu affiché a aussi le menu par défaut.
Y at-il de toute façon que la valeur par défaut ContextMenu ne s'affiche pas également?Default ContextMenu affiché le long du Custom ContextMenu

du Code a demandé:

@Override 
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) 
{ 
    super.onCreateContextMenu(menu, v, menuInfo); 
    MenuInflater inflater = getMenuInflater(); 
    menu.setHeaderTitle("Recipients"); 
    inflater.inflate(R.menu.menu_contacts, menu); 
} 
+0

Ne pas s'auto-déprécier. Aussi pouvez-vous s'il vous plaît inclure plus d'informations telles que le code que vous utilisez pour créer le ContextMenu et l'afficher. – Thomas

Répondre

0

menu contextuel est créé en remplaçant la méthode onCreateContextMenu. Si vous venez de gonfler un menu à partir de la ressource, aucun menu par défaut ne peut apparaître.

@Override 
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) 
{ 
    menu.setHeaderTitle("Context menu"); 
    MenuInflater inflater = getMenuInflater(); 
    inflater.inflate(R.menu.context_menu, menu); 
} 
+0

Je l'ai fait comme tu as répondu. Mais toujours la même chose. Je ne souhaite pas que mon menu contextuel personnalisé soit ajouté au menu contextuel par défaut. D'autres idées? –

+0

Ah, vous avez un menu _context_ par défaut quelque part? Quelle classe étendez-vous? Il suffit de deviner, mais essayez d'ajouter 'menu.clear();' à la première ligne de 'onCreateContextMenu'. –

+0

IL A TRAVAILLÉ! Merci Andrey! Penser qu'une simple ligne de code a résolu mon problème! Je pensais que je devais supprimer quelque chose dans le fichier manifeste pour résoudre mon problème. Merci encore Andrey! –