2010-11-23 14 views
0

Ich habe eine benutzerdefinierte ContextMenu erstellt. Aber wenn ich das Menü anrufe, hat das angezeigte Menü auch das Standardmenü.
Gibt es sowieso für den Standard ContextMenu nicht so gut zu erscheinen?Default ContextMenu zeigt sich entlang benutzerdefiniertem ContextMenu

-Code angefordert:

@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

Nicht selbst ablehnen. Auch können Sie bitte einige weitere Informationen wie den tatsächlichen Code, den Sie verwenden, um das ContextMenu zu erstellen und anzuzeigen. – Thomas

Antwort

0

Kontextmenü wird durch zwingende onCreateContextMenu Methode erstellt. Wenn Sie nur ein Menü von der Ressource aufblasen, kann kein Standardmenü erscheinen.

@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

Ich habe es so gemacht, wie du geantwortet hast. Aber immer noch das Gleiche. Ich möchte nicht, dass mein benutzerdefiniertes Kontextmenü dem Standardkontextmenü hinzugefügt wird. Noch mehr Ideen? –

+0

Ah, hast du irgendwo ein Standardkontextmenü? Welche Klasse erweitern Sie? Raten Sie einfach, aber versuchen Sie 'menu.clear();' in der ersten Zeile von 'onCreateContextMenu' hinzuzufügen. –

+0

ES GEARBEITET! Danke Andrej! Zu denken, dass eine einfache Codezeile mein Problem gelöst hat! Ich dachte, ich müsste etwas in der Manifest-Datei löschen, um mein Problem zu lösen. Danke nochmal Andrej! –