Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die einfachste Navigationsoption, die auf der Uhr verfügbar ist, ist ein einfaches modales Popup , das über der aktuellen Szene angezeigt wird.
Für Multi-Szenen-Watch-Apps stehen zwei Navigationsparadigma zur Verfügung:
Modale Schnittstellen
Verwenden Sie die PresentController Methode, um einen Schnittstellencontroller modal zu öffnen. Der Schnittstellencontroller muss bereits im Interface.storyboard definiert sein.
PresentController ("pageController","some context info");
Modal dargestellte Controller verwenden den gesamten Bildschirm (über die vorherige Szene). Standardmäßig wird der Titel auf "Abbrechen " festgelegt und durch Tippen auf den Controller geschlossen.
Rufen Sie auf, um DismissControllerden modal präsentierten Controller programmgesteuert zu schließen.
DismissController();
Modale Bildschirme können eine einzelne Szene sein oder ein seitenbasiertes Layout verwenden.
Hierarchische Navigation
Stellt Szenen wie einen Stapel dar, durch den navigiert werden kann, ähnlich wie bei UINavigationController iOS. Szenen können auf den Navigationsstapel verschoben und ausgeblendet werden (entweder programmgesteuert oder durch Benutzerauswahl).

Wie bei iOS navigiert eine Wischbewegung links zum übergeordneten Controller in einem hierarchischen Navigationsstapel zurück.
Pushing und Popping im Code
Watch Kit erfordert nicht, dass ein überbogender "Navigationscontroller" wie iOS erstellt werden muss – einfach einen Controller mithilfe der PushController Methode pushen und ein Navigationsstapel automatisch erstellt wird.
PushController("secondPageController","some context info");
Der Bildschirm der Überwachung enthält eine Schaltfläche "Zurück" in der oberen linken Ecke, Sie können aber auch programmgesteuert eine Szene aus dem Navigationsstapel entfernen.PopController
PopController();
Wie bei iOS ist es auch möglich, zum Stamm des Navigationsstapels zurückzukehren.PopToRootController
PopToRootController();
Verwenden von Segues
Segues können zwischen Szenen im Storyboard erstellt werden, um die hierarchische Navigation zu definieren. Um den Kontext für die Zielszene abzurufen, ruft das Betriebssystem die Initialisierung des neuen Schnittstellencontrollers auf GetContextForSegue .
public override NSObject GetContextForSegue (string segueIdentifier)
{
if (segueIdentifier == "mySegue") {
return new NSString("some context info");
}
return base.GetContextForSegue (segueIdentifier);
}
Seitenbasierte Schnittstellen
Seitenbasierte Schnittstellen wischen nach links nach rechts, ähnlich wie bei UIPageViewController iOS. Indikatorpunkte werden am unteren Rand des Bildschirms angezeigt, um anzuzeigen, welche Seite derzeit angezeigt wird.

Verwenden Sie zum Erstellen einer seitenbasierten Benutzeroberfläche die Hauptbenutzeroberfläche für Ihre Watch-App ReloadRootControllers mit einem Array von Schnittstellencontrollern und Kontexten:
var controllerNames = new [] { "pageController", "pageController", "pageController", "pageController", "pageController" };
var contexts = new [] { "First", "Second", "Third", "Fourth", "Fifth" };
ReloadRootControllers (controllerNames, contexts);
Sie können auch einen seitenbasierten Controller präsentieren, der nicht der Stamm PresentController ist, der von einem der anderen Szenen in einer App verwendet wird.
var controllerNames = new [] { "pageController", "pageController", "pageController", "pageController", "pageController" };
var contexts = new [] { "First", "Second", "Third", "Fourth", "Fifth" };
PresentController (controllerNames, contexts);