Also hier ist das Problem, das ich versuche zu lösen.
In jedem
viewController
versuche ich Anzeigen und die eigentlichen Steuerelemente einzufügen. Ich habe ein paar Tutorials auf raywenderlinch.com beendet, um zu verstehen, wie die Leute professionell Werbung in ihrer App platzieren. Sie verwendeten UIViews, um zwei Ansichten unter der Hauptansicht des Ansichtscontrollers zu haben. So habe ich völlig verstanden, dass einsubview
die Anzeigen hält und ein anderer den tatsächlichen App-Inhalt hält. Wenn die Anzeige geladen ist, nehmen Sie den Bildschirm auf oder lassen Sie die andere Ansicht den gesamten verfügbaren Bereich anzeigen.
Nachdem ich zu xcode zurückgekommen bin, habe ich angefangen zu schreiben, wie ich dort gelernt habe. aber als ich UIView
auf das Storyboard fallen ließ, sah ich containerView
, was meiner Meinung nach beim Schreiben des Tutorials nicht vorhanden war.
Also bin ich hier, um nach dem Ansatz und den Vor- und Nachteilen zu fragen.
Also im Grunde seine UIView
vs ContainerView
. Welchen Weg sollte ich machen und warum?
Jede Hilfe würde sehr geschätzt werden.
Sie verwenden UIView
, wenn Sie bereits eine Ansicht haben und keinen dedizierten View-Controller zum Erstellen und Verarbeiten von Interaktionen benötigen.
Auf der Hilfeseite UIView :
Das UIView-Objekt beansprucht eine rechteckige Region seines einschließenden
superview
(sein übergeordnetes Element in der Ansichtshierarchie) und ist für das Zeichnen in dieser Region verantwortlich ...
Vereinfachte Struktur: YourViewController --- (hat) --- & gt; UIView
Sie verwenden UIContainerView
, wenn Sie einen anderen View-Controller in den bereits vorhandenen integrieren möchten. Der eingebettete View-Controller ist dafür zuständig, eine Ansicht für die Region zurückzugeben, die UIViewContainer
belegt. Daher weiß Ihr UIContainerView
, welcher Ansicht-Controller% ce_de% in der Region, die er belegt, darstellt.
Auf der Hilfeseite UIContainerView :
Die Containeransicht definiert eine Region innerhalb des View-Untergraphen eines View-Controllers, die einen Child-View-Controller enthalten kann.
Vereinfachte Struktur: YourViewController --- (hat) --- & gt; SubViewController --- (hat) --- & gt; UIView
Das SubViewController gibt eine Ansicht zurück und behandelt seine Ereignisse.
Als alternative Antwort können Sie anstelle der technischen Unterschiede auch den Anwendungsfall berücksichtigen. Zum Beispiel: Warum eine Containeransicht verwenden?
Eine häufige Verwendung von Containeransichten ist die Wiederverwendung (Freigabe) einer Ansicht direkt im Storyboard. Zuvor erforderte die Wiederverwendung einer Ansicht das Erstellen einer separaten "xib" -Datei und das programmatische Hinzufügen dieser Ansicht, wenn der Ansichtscontroller geladen wurde.
Das obige Bild stammt von diesem extrem einfachen, leicht zu befolgenden Leitfaden führt Sie durch, wie Sie eine Containeransicht einrichten, die von 2 + View-Controllern gemeinsam genutzt wird.
Ein paar andere Gedanken darüber, wann man es benutzen sollte:
Dies hilft hoffentlich Leuten, die herausfinden wollen, wann eine Containeransicht auf sie zutrifft. Wenn Sie andere Anwendungsbeispiele haben, bearbeiten / fügen Sie sie hinzu oder fügen Sie sie in die Kommentare ein!
Wenn Sie diese Containeransicht des UIView-Klassentyps im Detail sehen. Um zu erfahren, warum wir containerView benötigen, sollten Sie den folgenden Abschnitt sehen
In den meisten Fällen entspricht ein Container-View-Controller einem Content-View-Controller. Es verwaltet Sichten und Inhalte, koordiniert mit anderen Objekten in Ihrer App und reagiert auf Ereignisse in der Responder-Kette. Bevor Sie einen Container-Controller entwerfen, sollten Sie bereits mit dem Entwurf von Inhaltsansicht-Controllern vertraut sein. Die Entwurfsfragen in "Erstellen von benutzerdefinierten Inhaltsansichtscontrollern" gelten auch beim Erstellen von Containern.
Weitere Informationen zur Containeransicht erhalten Sie unter link Aber bevor Sie beginnen, sollten Sie ein Verständnis von
habenund auch dieses Tutorial für die Verwendung der Containeransicht .
So können Sie beide Ansätze wählen. Hoffe das wird dir helfen. fröhliche Codierung:)
Tags und Links ios xcode uiview uicontainerview iad