met behulp van de storyboard om een reeks van UIViewControllers aan elkaar te koppelen is een kwestie van slepen en neerzetten van objecten op de storyboard.
ten Eerste de eerste view-controller is toegevoegd aan Navigatie-Controller
De volgende GIF-animatie toont hoe de drie weergave-controllers kunnen worden geplaatst in een rij, met een eenvoudige segue toegevoegd tussen elkaar, de set als een show segue, wat betekent dat elke view controller dia ‘ s in.
Ik heb de naam van de segues moveToSecond en moveToThird tussen de eerste en de tweede weergave-controllers en de tweede en derde bekijk controllers (respectievelijk).
knoppen toevoegen met acties
We moeten een knop toevoegen voor elke weergavecontroller (om code te schrijven om de seguete starten).
Dit is een relatief eenvoudig slepen-en-neerzetten (alleen de eerste knop is hier afgebeeld)
het Verplaatsen van Gegevens: Doorgeven van Gegevens Via een Segue
is Het mogelijk om data van het ene regelaar naar de andere met behulp van een segue.
overschakelen naar de eerste weergavecontroller geeft ons het volgende, met het belangrijke deel dat wordt becommentarieerd (FirstViewController is de klasse gerelateerd aan de eerste weergavecontroller, zoals weergegeven in de geanimeerde gif hierboven), en de knop actie wordt uitgedrukt.
We gaan dit gebruiken om informatie van de ene weergavecontroller naar de andere door te geven door performSegue(withIdentifier: String, sender: Any?) te gebruiken, het op te tooling in de knop Actie.
We werken de actie bij om de segue movetoseconde aan te roepen (zoals hierboven genoemd). In dit geval hoeven we de afzender niet te kennen, dus dit kan nihil zijn, maar we moeten er absoluut zeker van zijn dat de segue string correct is geïdentificeerd. We weten allemaal dat matching Strings een slecht idee is, maar om het te vermijden kun je het mooie geschreven artikel zien dat ik eerder heb gemaakt.
maar door aan te drukken zonder tekenreeks matching, gebruiken we prepare(for:sender:) om, goed, voor te bereiden op de segue. De afgewerkte methode ziet er ongeveer als de volgende (die is toegevoegd aan onze eerste weergave controller):
nu vertrouwt dit erop dat we een dataSent eigenschap hebben in de weergavecontroller die we bezoeken.
dus we kunnen dit in de vrij aantrekkelijk benoemde SecondViewController plaatsen, hoewel het slechts een eenvoudige eigenschap is die binnen de klasse view controller is geplaatst.
Hoe kunt u deze het beste weergeven? Ik ga voor een geanimeerde GIF.