Navigation

Die Compose-Methode
Jetpack Compose für Wear OS ist das empfohlene UI-Toolkit für Wear OS.

Nachdem Sie einzelne Bildschirme für jeden Nutzerpfad entworfen haben, haben Sie möglicherweise einige vertikale oder einzelne Bildschirme. Als Nächstes müssen Sie entscheiden, wie diese Bildschirme zusammenarbeiten und wie die Navigation implementiert werden soll.

Design

Halten Sie die Hierarchie Ihrer App flach und linear, wie in den Richtlinien für das App-Design beschrieben.

Zu Beginn sollte der Launcher Ihrer App den häufigsten Nutzerpfad öffnen. Gestalten Sie jeden Nutzerpfad so, dass die wichtigsten Inhalte oben stehen. Verwenden Sie für vertikale Container den unteren Bereich, um zu anderen, weniger häufigen Nutzerpfaden und den Einstellungen zu verlinken.

„Top-Inhalte“ sind die aktuelle Aktivität oder die wichtigste zusammenfassende Statistik.
Abbildung 1. Die wichtigsten Inhalte oben in vertikalen Containern platzieren.

Wenn Nutzer einen Ihrer Bildschirme aufrufen, müssen sie mit der Wischgeste zum Schließen nach unten im Back-Stack navigieren können.

Navigation implementieren

Bei der Implementierung der Navigation haben Sie drei Möglichkeiten, die in den folgenden Abschnitten beschrieben werden:

  • Nur Aktivitäten (empfohlener Ansatz)
  • Aktivitäten und Fragmente
  • Jetpack Navigation

Nur Aktivitäten

Da vertikale Bildschirme in der Regel nur eine Ebene tief sind, können Sie alle Bildschirme mit Aktivitäten und ohne Fragmente implementieren.

Wir empfehlen diesen Ansatz dringend. Er vereinfacht Ihren Code und Aktivitäten unterstützen automatisch die Wischgeste zum Schließen. Außerdem wird die Implementierung des Umgebungsmodus vereinfacht.

Hinweis: Lassen Sie Ihre Aktivitäten von einer ComponentActivity erben, wenn Sie keine Fragmente verwenden. Die anderen Aktivitätstypen verwenden mobile UI-Elemente, die Sie für Wear OS nicht benötigen.

Aktivitäten und Fragmente

Sie können Fragmente mit Aktivitäten in Ihrer Wear OS-App verwenden. Wir empfehlen dies jedoch nicht, da es keinen klaren Vorteil bietet, Fragmente zum Erstellen einer flachen Architektur zu verwenden.

Hinweis: Wenn Sie Fragmente verwenden, lassen Sie sie von FragmentActivity erben. Die anderen Aktivitätstypen verwenden mobile UI-Elemente, die Sie für Wear OS nicht benötigen.

Einige der Schwierigkeiten bei der Verwendung von Fragmenten in Ihrer Wear OS-App sind:

  • Sie müssen die Wischgeste zum Schließen selbst implementieren. Andernfalls beendet der Nutzer mit einer Wischgeste die gesamte App.
  • Wenn Sie AmbientMode verwenden, müssen Sie ihn anpassen, damit er richtig funktioniert. AmbientMode wird für die Aktivität festgelegt. Das müssen Sie bei der Implementierung von Fragmenten berücksichtigen.

Wenn Sie die Wischgeste zum Schließen mit Fragmenten unterstützen möchten, müssen Sie die Ansicht, die das Fragment enthält, in die SwipeDismissFrameLayout Klasse einfügen. Weitere Informationen finden Sie unter Wischgeste zum Schließen. So bieten Sie Nutzern eine einheitliche Nutzererfahrung mit Ihrer App.

Hinweis: Verwenden Sie bei der Verwendung von Fragmenten FragmentManager.add anstelle von FragmentManager.replace, um die Wischgeste zum Schließen zu unterstützen. So wird sichergestellt, dass Ihr vorheriges Fragment unter dem oberen Fragment gerendert wird, während es weggewischt wird.

Jetpack Navigation

Jetpack Navigation kann auf Wear OS funktionieren, hat aber die gleichen Nachteile wie Fragmente. Es erfordert zusätzlichen Entwicklungsaufwand und bietet aufgrund der in der Regel flachen und linearen Hierarchie einer Wear OS-App nicht viele Vorteile. Ein Ansatz, der nur Aktivitäten verwendet, ist am besten.

So nutzen Sie Jetpack Navigation optimal:

  • Jedes Fragment muss SwipeDismissFrameLayout als Stamm verwenden. Verwenden Sie die Aktion zum Schließen manuell, um im Navigationsdiagramm zurückzugehen.
  • Implementieren Sie einen benutzerdefinierten FragmentNavigator der Fragmente übereinander rendert.