2016-04-12 9 views
0

Ich bin ziemlich neu zu Xamarin.iOS und ich brauche etwas Hilfe bei der Navigation.Xamarin iOS Pop fertig UINavigationController aus dem Stapel

Um es kurz zu machen, hier ist, wie die Navigation in meiner Anwendung funktionieren soll:

Meine Anwendung von 3 Bildschirmen besteht.

Bildschirm 1: Dies ist ein einfacher UITableViewController wo ich Elemente zur Liste hinzufügen kann. Wenn ich ein Element hinzufügen, habe ich eine Segue (Details anzeigen) zu Bildschirm 2.

Screen 2 & 3: Screen 2 in einem UINavigationController eingebettet ist. Bildschirm 3 ist das Ende meines Assistenten, um einen Gegenstand hinzuzufügen.

Auf dem Bildschirm 3, wenn ich fertig bin, habe ich eine Taste, um zurück zu Bildschirm 1 zu navigieren. Wie navigiere ich von dort und entfernen Sie den UINavigationController, Screen 2 & 3?

Antwort

0

Von Xamarin docs verwenden: Creating an Unwind Segue

Abwickelsystem kann Segue verwendet werden zurück durch einen Schub- oder modalen segue zu navigieren - für B. durch die Entlassung modal präsentiert View Controller. Darüber hinaus können Sie sich nicht nur durch eine einzige, sondern auch durch eine Reihe von Push- und Modal-Abläufen entspannen und mit einer einzigen Abwicklungsaktion mehrere Schritte in Ihrer Navigationshierarchie zurücklegen.

Sie brauchen nur dieses Stück Code in dem Ziel UIViewController

[Action ("UnwindToTargetViewController:")] 
public void UnwindToTargetViewController (UIStoryboardSegue segue) 
{ 
    Console.WriteLine ("We've unwinded to Target!"); 
} 

Auf der OriginViewController, nur eine Schaltfläche mit der Ausgang Szene verknüpfen und wählen Sie die Methode, die Sie gerade erstellt!

0

die PopToRootViewController() Methode auf UINavigationController

nav.PopToRootViewController(true); 
+0

Dank Jason, eigentlich, was ich suchte, ist eine Abwicklungsstrecke – Swell

Verwandte Themen