Eine Menü-Ressource definiert ein Anwendungsmenü (Optionsmenü, Kontextmenü oder Untermenü), das mit MenuInflater aufgeblasen werden kann.
Eine Anleitung zur Verwendung von Menüs finden Sie im Menusdeveloper-Handbuch.
Speicherort der Datei:res/menu/filename.xml
Der Dateiname wird als Ressourcenkennung verwendet. compiled resource datatype: Ressourcenzeiger auf eineMenu(oder Unterklasse) Ressource. resource reference: In Java:R.menu.filename
In XML:@menu.filenameSyntax: Elemente:<menu>Erforderlich. Dies muss der Wurzelknoten sein. Enthält<item>und/oder<group>Elemente.
Attribute:
xmlns:androidXML-Namespace. Erforderlich. Definiert den XML-Namensraum, der"http://schemas.android.com/apk/res/android"sein muss.<item>Ein Menüpunkt. Kann ein<menu>Element enthalten (für ein Untermenü). Muss ein Kind eines<menu>oder<group>Elements sein.
Attribute:
android:idRessourcen-ID. Eine eindeutige Ressourcen-ID. Um eine neue Ressourcen-ID für dieses Element zu erstellen, verwenden Sie die Form:"@+id/name". Das Plus-Symbol zeigt an, dass dies als neue ID erstellt werden soll.android:titleString-Ressource. Der Menütitel als String-Ressource oder Rohstring.android:titleCondensedString-Ressource. Ein zusammengefasster Titel als String-Ressource oder roher String. Dieser Titel wird für Situationen verwendet, in denen der normale Titel zu lang ist.android:iconZeichnungsfähige Ressource. Ein Bild, das als Symbol für den Menüpunkt verwendet werden soll.android:onClickMethodenname. Die Methode, die aufgerufen wird, wenn dieser Menüpunkt angeklickt wird. Die Methode muss in der Aktivität als öffentlich deklariert werden und einenMenuItemals einzigen Parameter akzeptieren, der das angeklickte Element angibt. Diese Methode hat Vorrang vor dem Standardcallback anonOptionsItemSelected(). Siehe das Beispiel am Ende.
Warnung: Wenn Sie Ihren Code mit ProGuard (oder einem ähnlichen Tool) verschleiern, stellen Sie sicher, dass die Methode, die Sie in diesem Attribut angeben, von der Umbenennung ausgeschlossen ist, da dies die Funktionalität beeinträchtigen kann.
Eingeführt in API Level 11.
android:showAsActionSchlüsselwort. Wann und wie dieser Eintrag als Aktionseintrag in der App-Leiste erscheinen soll. Ein Menüelement kann nur dann als Aktionselement erscheinen, wenn die Aktivität eine Anwendungsleiste enthält. Gültige Werte:
| Wert | Beschreibung |
|---|---|
ifRoom |
Platzieren Sie dieses Element nur in der App-Leiste, wenn Platz dafür vorhanden ist. Wenn nicht für alle mit "ifRoom" gekennzeichneten Elemente Platz ist, werden die Elemente mit den niedrigsten orderInCategory-Werten als Aktionen angezeigt, und die restlichen Elemente werden im Überlaufmenü angezeigt. |
withText |
Fügen Sie dem Aktionselement auch den Titeltext (definiert durch android:title) bei. Sie können diesen Wert zusammen mit einem der anderen als Flaggensatz einfügen, indem Sie sie mit einer Pipe | trennen. |
never |
Platzieren Sie dieses Element niemals in der Anwendungsleiste. Führen Sie das Element stattdessen im Überlaufmenü der Anwendungsleiste auf. |
always |
Dieses Element immer in der Anwendungsleiste platzieren.Vermeiden Sie die Verwendung dieser Option, es sei denn, es ist wichtig, dass das Element immer in der Aktionsleiste erscheint. Wenn Sie mehrere Elemente so einstellen, dass sie immer als Aktionselemente angezeigt werden, kann dies dazu führen, dass sie sich mit anderen Benutzeroberflächen in der Anwendungsleiste überschneiden. |
collapseActionView |
Die mit diesem Aktionselement verbundene Aktionsansicht (wie durch android:actionLayout oderandroid:actionViewClass deklariert) ist zusammenklappbar.Eingeführt in API Level 14. |
Weitere Informationen finden Sie in der Schulungsklasse Hinzufügen der App-Leiste.
Eingeführt in API Level 11.
android:actionLayoutLayout-Ressource. Ein Layout, das als Aktionsansicht verwendet wird.
Weitere Informationen finden Sie unter Aktionsansichten und Aktionsanbieter.
Eingeführt in API-Stufe 11.
android:actionViewClassKlassenname. Ein vollqualifizierter Klassenname für dieViewals Aktionsansicht zu verwendende Klasse. Zum Beispiel"android.widget.SearchView", umSearchViewals Aktionsansicht zu verwenden.
Weitere Informationen finden Sie unter Action Views und Action Providers.
Warnung: Wenn Sie Ihren Code mit ProGuard (oder einem ähnlichen Tool) verschleiern, stellen Sie sicher, dass Sie die Klasse, die Sie in diesem Attribut angeben, von der Umbenennung ausschließen, da dies die Funktionalität beeinträchtigen kann.
Eingeführt in API Level 11.
android:actionProviderClassKlassenname. Ein vollqualifizierter Klassenname für dasActionProvider, das anstelle des Aktionselements verwendet werden soll. Zum Beispiel"android.widget.ShareActionProvider"für die Verwendung vonShareActionProvider.
Weitere Informationen finden Sie unter Action Views und Action Providers.
Warnung: Wenn Sie Ihren Code mit ProGuard (oder einem ähnlichen Tool) verschleiern, stellen Sie sicher, dass Sie die Klasse, die Sie in diesem Attribut angeben, von der Umbenennung ausschließen, da dies die Funktionalität beeinträchtigen kann.
Eingeführt in API Level 14.
android:alphabeticShortcutChar. Ein Zeichen für die alphabetische Abkürzungstaste.android:numericShortcutInteger. Eine Zahl für die numerische Abkürzungstaste.android:alphabeticModifiersSchlüsselwort. Ein Modifikator für das alphabetische Tastaturkürzel des Menüpunkts. Der Standardwert entspricht der Steuerungstaste. Gültige Werte:
| Wert | Beschreibung |
|---|---|
META |
Entspricht der Meta-Meta-Taste |
| CTRL | Entspricht der Steuerungstaste |
| ALT | Entspricht der Alt Metataste |
| Umschalttaste | Entspricht der Umschalt-Metataste |
| SYM | Entspricht entspricht der Metataste Sym |
| FUNCTION | entspricht der Metataste Function |
Hinweis: Sie können mehrere Schlüsselwörter in einem Attribut angeben. Zum Beispiel gibt android:alphabeticModifiers="CTRL|SHIFT" an, dass der Benutzer zum Auslösen des entsprechenden Menüeintrags sowohl die Strg- als auch die Umschalt-Metataste zusammen mit der Tastenkombination drücken muss.
Sie können die Methode setAlphabeticShortcut() verwenden, um die Attributwerte programmatisch festzulegen. Weitere Informationen über das Attribut alphabeticModifier finden Sie unter alphabeticModifiers.
android:numericModifiersSchlüsselwort. Ein Modifikator für das numerische Tastaturkürzel des Menüelements. Der Standardwert entspricht der Steuerungstaste. Gültige Werte:
| Wert | Beschreibung |
|---|---|
| META | Entspricht der Meta-Meta-Taste |
| CTRL | Entspricht der Control-Meta-Taste |
| ALT | Entspricht der Alt-Meta Taste |
| Umschalttaste | Entspricht der Umschalt-Metataste |
| SYM | Entspricht entspricht der Metataste Sym |
| FUNCTION | entspricht der Metataste Function |
Hinweis: Sie können mehrere Schlüsselwörter in einem Attribut angeben. Zum Beispiel gibt android:numericModifiers="CTRL|SHIFT" an, dass der Benutzer zum Auslösen des entsprechenden Menüeintrags sowohl die Strg- als auch die Umschalt-Metataste zusammen mit dem Kürzel drücken muss.
Sie können die setNumericShortcut()-Methode verwenden, um die Attributwerte programmatisch festzulegen. Weitere Informationen über das Attribut numericModifier finden Sie unter numericModifiers.
android:checkableBoolescher Wert. „true“, wenn das Element überprüfbar ist.android:checkedBoolescher Wert. „true“, wenn der Eintrag standardmäßig geprüft wird.android:visibleBoolescher Wert. „true“, wenn der Eintrag standardmäßig sichtbar ist.android:enabledBoolescher Wert. „true“, wenn das Element standardmäßig aktiviert ist.android:menuCategorySchlüsselwort. Wert, der denMenuCATEGORY_*Konstanten entspricht, die die Priorität des Elements festlegen. Gültige Werte:
| Wert | Beschreibung |
|---|---|
container |
Für Elemente, die Teil eines Containers sind. |
system |
Für Elemente, die vom System bereitgestellt werden. |
secondary |
Für Elemente, bei denen es sich um vom Benutzer bereitgestellte sekundäre (selten verwendete) Optionen handelt. |
alternative |
Für Elemente, bei denen es sich um alternative Aktionen zu den aktuell angezeigten Daten handelt. |
android:orderInCategoryGanzzahlig. Die Reihenfolge der „Wichtigkeit“ des Elements innerhalb einer Gruppe.<group>Eine Menügruppe (um eine Sammlung von Elementen zu erstellen, die gemeinsame Eigenschaften haben, z. B. ob sie sichtbar, aktiviert oder überprüfbar sind). Enthält ein oder mehrere<item>Elemente. Muss ein Kind eines<menu>-Elements sein.
Attribute:
android:idRessourcen-ID. Eine eindeutige Ressourcen-ID. Um eine neue Ressourcen-ID für dieses Element zu erstellen, verwenden Sie die Form:"@+id/name". Das Plus-Symbol zeigt an, dass diese als neue ID erstellt werden soll.android:checkableBehaviorSchlüsselwort. Die Art des überprüfbaren Verhaltens für die Gruppe. Gültige Werte:
| Wert | Beschreibung |
|---|---|
none |
Nicht ankreuzbar |
all |
Alle Elemente können angekreuzt werden (Kontrollkästchen verwenden) |
single |
Nur ein Element kann angekreuzt werden (Radiobuttons verwenden) |
android:visibleBoolesch. „true“, wenn die Gruppe sichtbar ist.android:enabledBoolescher Wert. „true“, wenn die Gruppe aktiviert ist.android:menuCategorySchlüsselwort. Wert entsprechend denMenuCATEGORY_*Konstanten, die die Priorität der Gruppe festlegen. Gültige Werte:
| Wert | Beschreibung |
|---|---|
container |
Für Gruppen, die Teil eines Containers sind. |
system |
Für Gruppen, die vom System bereitgestellt werden. |
secondary |
Für Gruppen, bei denen es sich um vom Benutzer bereitgestellte sekundäre (selten verwendete) Optionen handelt. |
alternative |
Für Gruppen, bei denen es sich um alternative Aktionen zu den aktuell angezeigten Daten handelt. |
android:orderInCategoryGanzzahl. Die Standardreihenfolge der Elemente innerhalb der Kategorie. Beispiel: XML-Datei gespeichert unterres/menu/example_menu.xml:
Der folgende Anwendungscode bläst das Menü über den onCreateOptionsMenu(Menu)-Callback auf und deklariert außerdem den On-Click-Callback für zwei der Elemente: