Wie erstelle ich eine View Controller-Datei, nachdem ich einen neuen View Controller erstellt habe?

81

Ich entwickle eine Anwendung mit Registerkarten.

Wenn ich einen neuen Ansichts-Controller erstelle und ihn mit dem Registerkarten-Controller verknüpfe, hat dieser im Gegensatz zu den beiden anderen Standard-Ansichts-Controllern keine viewcontroller.swiftDatei.

Wie kann ich diese Datei erstellen?

Ich benutze Xcode 6 und entwickle die App in Swift.

Kian Cross
quelle

Antworten:

133

Richtig, wenn Sie ein View Controller-Objekt auf Ihr Storyboard ziehen, um eine neue Szene zu erstellen, wird die neue Klasse nicht automatisch auch für Sie erstellt.

Nachdem Sie Ihrem Storyboard eine neue View Controller-Szene hinzugefügt haben, müssen Sie:

  1. Erstellen Sie eine UIViewControllerUnterklasse. Gehen Sie beispielsweise in den Ordner Ihres Ziels im Projektnavigatorfenster links und controlklicken Sie dann auf und wählen Sie "Neue Datei ...". Wählen Sie eine "Cocoa Touch Class":

    Cocoa Touch Class

    Wählen Sie dann einen eindeutigen Namen für die neue View Controller-Unterklasse aus:

    UIViewController-Unterklasse

  2. Geben Sie diese neue Unterklasse als Basisklasse für die Szene an, die Sie gerade zum Storyboard hinzugefügt haben.

    Geben Sie hier die Bildbeschreibung ein

  3. Verbinden Sie nun alle IBOutletund IBActionReferenzen für diese neue Szene mit der neuen View Controller-Unterklasse.

rauben
quelle
Können Sie auch nur eine .swiftDatei erstellen ? Da ViewController.swiftwird die Datei zur Verwendung in Swift sein.
Azurespot
4
Danke, ich meinte, wir könnten eine SwiftDatei aus dem Popup anstelle der auswählen Cocoa Touch Class, richtig?
Azurespot
9
Sicher, aber dies macht dasselbe und fügt die erforderlichen importAnweisungen hinzu und legt die Basisklasse fest und gibt Ihnen die Vorlage für einige Methoden. Ich bin mir nicht sicher, warum Sie das manuell tun möchten, aber Sie können es sicherlich, wenn Sie möchten.
Rob
Wenn Sie mutig sind, können Sie Schritt 1 tatsächlich überspringen. In Schritt 2 können Sie die benutzerdefinierte Klasse auf eine Ihrer vorhandenen View Controller-Klassen festlegen und diese View Controller-Klasse die Aktionen und Outlets für beide (oder jedoch) ausführen lassen viele) Szenen, die Sie auf diese VC eingestellt haben. Beachten Sie, dass dies viele Fallstricke hat (beginnend mit der Tatsache, dass Sie überprüfen müssen, ob eine Steckdose Null ist, bevor Sie sie verwenden), und dass es viele Fehler geben kann, wenn Sie es für ein großes Projekt versuchen, aber es ist eine praktischer Trick für kleine / Spielzeug / Beispiel-Apps.
Jemenake
Lol. Wenn Sie am Ende des Tunnels ein Licht sehen, stellen Sie sicher, dass es sich nicht um einen weiteren Zug handelt, der mit hoher Geschwindigkeit direkt auf Sie zusteuert. Technisch gesehen haben Sie natürlich Recht, aber OMG, Sie betteln nur um Probleme, Kopfschmerzen bei der Code-Wartung usw.
Rob
-2

Führen ViewControllerSie die folgenden ViewControllerSchritte aus, um neue hinzuzufügen, sobald Sie eine vorhandene haben :

  1. Klicken Sie auf den Hintergrund von Main.storyboard.

  2. Suchen und wählen Sie ViewControllerim Dienstprogrammfenster aus der Objektbibliothek.

  3. Ziehen Sie es per Drag & Drop in den Hintergrund, um ein neues zu erstellen ViewController.

Manan Jain
quelle