2016-05-15 14 views
1

(Ich bin nicht sicher, ob es die richtige Terminologie ist aber Navbar auf das Ausklappmenü bezieht, die auf Android Apps üblich ist) auf Android EntwicklungAndroid halten Navigationsleiste über Aktivitäten

Ich bin neu und hatte ein Frage über die gleiche Navbar über Bildschirme zu halten. Ich habe festgestellt, dass das standardmäßig erstellte Layout (standardmäßig activity_main.xml) besagt, dass das Layout mit dem Inhalt (standardmäßig content_main.xml) enthalten sein muss.

Meine Frage ist, wäre es einfacher, neue Aktivitäten zu erstellen und laden Sie die Navbar in sie, irgendwie die content_main.xml wechseln, wenn eine Option aus der Navbar ausgewählt ist, oder gibt es eine andere Option, die ich nicht in Betracht ziehen?

Antwort

1

Sie können die Schublade in Ihrer Haupttätigkeit haben und Fragmente erstellen, die die Kinder der Haupttätigkeit sein werden. Haben Sie ein Rahmenlayout und ersetzen Sie die Fragmente in diesem Layout.

Auf diese Weise erhalten Sie Schublade in allen Bildschirmen, keine Notwendigkeit, eine neue Aktivität zu erstellen, es sei denn, es gibt keine andere Option. Und Sie können problemlos zwischen Fragmenten über die Elternaktivität kommunizieren.

1

Es gibt zwei Hauptoptionen, um die Navigationsleiste wieder zu verwenden:

  1. einer Basis Aktivität Machen Teil es und alle Aktivitäten lassen, dass die Schublade erweitern diese Basis Aktivität haben wollen. Erstellen Sie eine abstrakte Methode in der Basisaktivität, die das benutzerdefinierte Layout (R.layout.content_some_activity) zurückgibt, das die Unterklassen zur Laufzeit bereitstellen. Die Basisaktivität ersetzt den Inhaltsrahmen durch das bereitgestellte Layout.

  2. Verwenden Sie nur eine Aktivität und wechseln Sie mehrere Fragmente im Inhaltsrahmen.

Verwandte Themen