Wie kann man eine Buch -App am besten übergehen, die einen UIViewController verwendet, um alle Seiten als UIViews für Storyboarding und UipageView zu verarbeiten?
-
28-10-2019 - |
Frage
Ich habe eine Buch -App mit etwa 30 Seiten, die jeweils eine UIView in einem einzigen UIViewController haben. Ich möchte dies in eine App übergehen, die Storyboarding und UipageViews verwendet. Es sieht so aus, als ob jedes der "Seiten" in uipageview ein UIViewController sein muss, kein UIView. Was wäre der beste Weg, dies zu tun? Muss ich einen UIViewController aus jeder UIView -Seite herausholen?
Lösung
Kasse Ein Beispiel iOS 5 iPhone uipageViewController -Anwendung Artikel. Dieses Kapitel bietet einen kurzen Überblick über die Konzepte hinter dem Seitenansichts -Controller und eine Beispielanwendung, die diese Klasse in Aktion demonstrieren soll.
Andere Tipps
Ja. Schreiben Sie alle Ihre um UIView
Unterklassen als UIViewController
Unterklassen. Ich habe es mit ein paar meiner Projekte gemacht, und es stellt sich heraus, dass es nur ein wenig langweilig ist. Für meine Projekte fand ich es am einfachsten, nur ein neues XCode -Projekt zu erstellen und die neue Infrastruktur aufzubauen. Dann neu erstellen UIViewController
Kurse für jeden meiner alten UIView
Klassen. Dann habe ich den größten Code vom alten kopiert und eingefügt UIView
Unterricht in neu UIViewController
Klassen. Ich habe viel verändert self
zu self.view
. Der Lebenszyklus von a UIViewController
ist etwas komplexer als eine UIView, daher habe ich einen Initialisierungscode vom angegebenen Initialisierer in die bewegt viewDidLoad
und viewWillAppear
Methoden in meinem UIViewController
Unterklassen.
Antwort auf Kommentar: In meinen Apps haben viele Seiten einzigartige interaktive Funktionen, daher schreibe ich ein einzigartiges UIViewController
Unterklasse, um diese Funktionen zu verwalten. Einige Seiten haben die gleichen Funktionen, aber unterschiedliche Inhalte. Diese verwenden nur mehrere Instanzen von einem UIViewController
Unterklasse. Mein Modellobjekt wird diese machen UIViewController
Unterklassen und bevölkern sie mit dem entsprechenden Inhalt.
Mit anderen Worten, es besteht keine Notwendigkeit, ein neues zu schreiben UIViewController
Unterklasse für jede Seite. Nur so viele wie Sie einzigartige Funktionen auf einer Seite haben. Wenn Ihre Seite nichts tut, könnten Sie sogar nur verwenden UIViewController
ohne Unterklasse.