Ich wollte diesem und jenem Funktionen hinzufügen, aber als ich es mit einem Storyboard machen wollte, das so sauber wie möglich war, bin ich ziemlich gestolpert, also werde ich es hier lassen. Ich hoffe es hilft dir das zu lesen.
Das Ideal ist in erster Linie ein Storyboard One ViewController, aber eine TabBar, die mehrere Storyboards verbinden muss. Mit Ausnahme derer, die alles in Code schreiben, besteht die Gefahr, dass das Storyboard für Anfänger durcheinander gebracht wird. Hier kommt die Storyboard-Referenz ins Spiel. Mit dieser Funktion können Sie auf das Storyboard verweisen. Da die Anzeige klein ist, ist der Bildschirm ordentlich.
Es ist eine Slapstick-Geschichte, aber als ich wirklich anfing, sie mit xcode zu erstellen, als ich alle View-Controller in ein Storyboard packte, wurde sie zu schwer und ich konnte nicht gut arbeiten.
Erstellen Sie zunächst ein neues Projekt aus xcode und wählen Sie eine einfache App. Hier wird ProdactName auf TabTest gesetzt. (Der Name kann alles sein) Die Schnittstelle sollte Storyboard sein. Ich kenne Swift UI nicht. (Während des Studiums)
(Ich verstecke es, weil der Name peinlich ist)
Verlassen Sie als Nächstes das main.Storyboard von Anfang an und erstellen Sie zwei Storyboards, die Sie wechseln möchten. Sie können eine neue Datei erstellen, sobald Sie Befehl + N drücken;) Hier habe ich Storyboards mit den Namen First und Seconde erstellt. Diese beiden sind noch leer. Drücken Sie also oben rechts auf [+] und ziehen Sie [View Controller] per Drag & Drop. Erstellen Sie als Nächstes erneut eine neue Datei, um den Inhalt dieses View Controler zu schreiben. Wählen Sie nun "Swift File". "Coco a touch class" ist einfacher, aber ich habe mich dafür entschieden, mich daran zu gewöhnen, auch nur einen Code zu schreiben. Es ist ein fester Satz, so dass Sie sich leicht daran erinnern können;) Nennen Sie sie FirstViewController und SecondViewController gemäß dem Storyboard. Ich denke es sieht so aus.
Jetzt schreiben wir den Code. Bitte löschen Sie die zuerst eingegebene `` `import Foundation```. Denken Sie also bitte an den folgenden Code als festen Ausdruck für alltägliche Grüße "Guten Morgen".
FirstViewController.swift
import UIKit
class FirstViewController: UIViewController {
override func viewDidLoad() {
}
}
Dies ist der Teil, der automatisch beschrieben wird, wenn Sie beim vorherigen Erstellen einer neuen Datei "Cocoa Touch Class" auswählen. Aber ich denke, dass sich das Schreiben selbst positiv auf die Zukunft auswirken wird. (Zumindest bin ich mit dem Erstellen von Erweiterungen zufrieden? Es ist psychologisch einfacher, verschiedene Klassen in dieselbe View-Controller-Datei zu schreiben.)
Die Geschichte ging schief.
Um es kurz zu erklären, importieren (laden) Sie zuerst ein Kit (Toolbox) mit verschiedenen nützlichen Tools (Tools) namens UIKit. Erstellen Sie dann eine Klasse mit demselben Namen wie die Datei, um die Lesbarkeit zu verbessern. Diese Klasse wird auch als Klasse festgelegt, die als UIViewController fungiert. Anstatt von Anfang an mit dem Schreiben von "override ..." für den viewDidLoad () - Teil zu beginnen, funktioniert die xcode-Kompensationsfunktion, wenn Sie über "viewd ..." schreiben, und Sie können sie einfach schreiben. Diese viewDidLoad () ist eine Funktion, die nur beim ersten Anzeigen des Bildschirms geladen wird. Oft werden verschiedene Grundeinstellungen vorgenommen. super.viewDidLoad () ist ... super.
Stellen Sie die Klasse, die Sie geschrieben haben, auf den View Controller im Storyboard ein.
Wenn Sie auf die Leiste über dem Ansichts-Controller klicken, wird rechts ein Detailbildschirm angezeigt. Lassen Sie uns den FirstViewController festlegen, der zuvor in der Custom-Klasse erstellt wurde. Stellen Sie dasselbe für Second ein. Auf diese Weise wird der Code verknüpft und das Programm reflektiert.
Drücken Sie außerdem die Taste wie in der folgenden Abbildung gezeigt, um [Is Initial View Controller] zu aktivieren. Obwohl es leicht geschrieben ist, ist es wichtig.
Ich werde hier das linke Main.storyboard verwenden. (Wenn Sie sich daran gewöhnt haben, sollten Sie ein neues TabBar.storyboard erstellen.) Durch Drücken der in der Abbildung gezeigten Reihenfolge können Sie TabBar auf dem vorhandenen Ansichts-Controller installieren. Die linke Seite ist TabBarController und die rechte Seite ist ViewController, aber Sie brauchen die rechte Seite nicht, also löschen Sie sie mit delete. Es bleibt nur die TabBar übrig.
Drücken Sie oben rechts auf [+] und ziehen Sie die Storyboard-Referenz per Drag & Drop. Sie können eine Verbindung herstellen, indem Sie die Maus über den TabBarController bewegen, die Steuerung gedrückt halten und gedrückt halten und zur Storyboard-Referenz bringen. Hier haben Sie die Wahl, wie Sie eine Verbindung herstellen möchten, aber wählen Sie bitte [Beziehungsabschnitt]. Wiederholen Sie diesen Vorgang noch einmal, um die beiden Storyboard-Referenzen zu verbinden.
Wenn Sie auf die Storyboard-Referenz klicken, werden die in den Details rechts angezeigten Elemente angezeigt. Im Pulldown des Storyboards oben werden First und Second erstellt. Legen Sie also jeweils fest.
Die Registerkartenleiste ist jetzt mit jedem Storyboard verbunden. Es ist auch eine gute Idee, es einmal auszuführen und festzustellen, ob Fehler vorliegen.
Wie Sie an der ehrlichen Person sehen können, die lief, ist der Bildschirm rein weiß. Unten sehen Sie einen leicht farbigen Balken, aber es wird kein Element angezeigt. Lassen Sie uns BarItem auf jedes Storyboard setzen. Ziehen Sie [Registerkartenelement] von [+] auf First.storyboard und legen Sie es dort ab. Da es unten willkürlich installiert wird, werden beim Klicken Elemente wie Titel und Bild in den Details auf der rechten Seite angezeigt. Bitte geben Sie es entsprechend ein. Es gibt viele Bilder, die mit xcode erstellt wurden. Wählen Sie daher ein geeignetes aus. Wenn Sie auch den zweiten Wert festlegen können, versuchen Sie es erneut. Die Tabbar wurde eingerichtet und kann umgeschaltet werden. (Was auch immer Sie drücken, es ist weiß? Das liegt daran, dass beide View Controller einen weißen Bildschirm haben;)
Wenn Sie hier ankommen, liegt das Ziel direkt vor Ihnen. Gib dein Bestes ein bisschen mehr! Gehen Sie zurück zu Main.storyboard und klicken Sie auf Storyboard-Referenz. Erinnern Sie sich, dass sich im Embed In ein Navigationscontroller befand, an den der TabBar-Controller zuvor angeschlossen war? Verbinden Sie den Navigationscontroller mit jeder Storyboard-Referenz. Plötzlich kommt ein großer NavigationController heraus und ich bin überrascht, aber es ist okay.
Ich habe nicht viel Code geschrieben, also schreiben wir den Code am Ende auf coole Weise.
FirstViewController.swift
import UIKit
class FirstViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
setNavigation()
}
private func setNavigation(){
navigationItem.title = "First"
}
}
SecondViewController.swift
import UIKit
class SecondViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
setNavigation()
}
private func setNavigation(){
navigationItem.title = "Second"
}
}
Rufen Sie eine Funktion namens setNavigation () in viewDidLoad () auf. Dies macht es einfacher zu sehen, was viewDidLoad tut und was der Angerufene tut. Bitte googeln Sie für privat.
Versuchen Sie es damit. Erster und Zweiter werden oben auf dem Bildschirm angezeigt!
Herzliche Glückwünsche! Ich habe mein Bestes gegeben! Sie haben drei Tage lang danach gesucht und sind in wenigen Minuten angekommen! !!
Es war eine seltsame Spannung, wahrscheinlich weil ich den größten Teil dieses Artikels um 3 Uhr mitten in der Nacht geschrieben habe. Wenn ich mir Artikel mit Anleitungen in Übersee ansehe, ermutige ich sie oft so, und ich schreibe sie oft so, als würden sie miteinander sprechen, also habe ich es so geschrieben. Da ich viel Sukusho gepostet habe, tut es mir ehrlich leid ... Der Artikel ist lang geworden.
Ich bin noch ein Anfänger. Wenn es also Fehler oder bessere Möglichkeiten gibt, mich zu unterrichten, werde ich es lieben.
Wie ich am Anfang schrieb, hoffe ich, dass dieser Artikel jemandem hilft.
Coding with me!;)
Recommended Posts