Frage

Ich lerne über das Erstellen von Optionenmenüs für Android -Apps.

In dem führen Es hat den folgenden Tipp, um mit Menüs trocken zu bleiben:

TIPP: Wenn Ihre Anwendung mehrere Aktivitäten enthält und einige von ihnen das gleiche Optionsmenü enthalten, sollten Sie eine Aktivität erstellen, die nichts anderes implementiert, außer den OncreateOptionsMenu () und OnoptionStemSelected () -Methoden. Erweitern Sie diese Klasse für jede Aktivität, die das gleiche Optionsmenü teilen sollte. Auf diese Weise müssen Sie nur einen Code -Satz für die Handhabung der Menüaktionen verwalten, und jede Nachkommenklasse erbt das Menüverhalten.

Dies erscheint problematisch. Wenn die Activitys, die die gleichen Optionen teilen müssen, die aus verschiedenen Klassen erben, was soll mein OptionsMenuActivity geerbt von? Ich habe gelesen, dass Java das mehrfache Vererbung nicht unterstützt. Wie können Sie sich damit umgehen?

War es hilfreich?

Lösung

Ihre Aktivität mit dem Menü Code for Options sollte die Aktivitätsklasse erweitern.

public class YourRootActivity extends Activity {

// Any other stuff that you want for all activities

 public boolean onCreateOptionsMenu(Menu menu){
 // your main options menu
 }
}

Für die Klassen, die dieses Menü benötigen, erweitern sie die oben erstellten Aktivitäten.

class Activity1 extends YourRootActivity {
}

Falls Sie geringfügige Änderungen in Ihrem Optionsmenü in den Unterklassen wünschen, können Sie die OnCreateOptionsMenu -Methode in diesen Klassen überschreiben.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top