iOS
ModelPresentationStyles
Suche…
Einführung
Modale Präsentationsstile werden verwendet, wenn Sie von einem View-Controller zu einem anderen wechseln. Es gibt zwei Möglichkeiten, diese Anpassung vorzunehmen. Eine ist durch Code und eine andere durch Interface Builder (unter Verwendung von Segmenten). Dieser Effekt wird erreicht, indem die Variable modalPresentationStyle
auf eine Instanz der UIModalPresentationStyle
. modalPresentationStyle
Eigenschaft modalPresentationStyle
ist eine Klassenvariable von UIViewController
und wird verwendet, um anzugeben, wie ein ViewController
auf dem Bildschirm dargestellt wird.
Bemerkungen
Denken Sie immer an die folgende Erwähnung von Apple.
In einer horizontal kompakten Umgebung werden Controller für modale Ansichten immer im Vollbildmodus angezeigt. In einer horizontal regulären Umgebung gibt es verschiedene Darstellungsoptionen.
Erkundung von ModalPresentationStyle mit dem Interface Builder
Dies ist eine sehr einfache App, die verschiedene ModalpresentationStyle
in iOS veranschaulicht. Gemäß der hier gefundenen Dokumentation gibt es für UIModalPresentationStyle
9 verschiedene Werte, die wie folgt lauten:
-
fullScreen
-
pageSheet
-
formSheet
-
currentContext
-
custom
-
overFullScreen
-
overCurrentContext
-
popover
-
none
Um ein Projekt ViewControllers
, erstellen Sie einfach ein normales iOS-Projekt und fügen Sie 2 ViewControllers
. UIButton
Sie einen UIButton
in UIButton
ursprünglichen ViewController
und verbinden Sie ViewController
über einen Target -> Action
Mechanismus mit dem 2. ViewController
. Um beide ViewControllers
zu unterscheiden, legen Sie die Hintergrundeigenschaft von UIView
in ViewController
einer anderen Farbe fest. Wenn alles gut geht, sollte Ihr Interface Builder etwas aussehen,
Stellen Sie sicher, dass Sie dieses Projekt erstellen und auf dem iPad ausführen (Weitere Informationen zu den Gründen für das iPad finden Sie im Abschnitt "Bemerkungen"). Wenn Sie mit der Einrichtung Ihres Projekts fertig sind, wählen Sie das Segment aus und gehen Sie zum attributes inspector
. Sie sollten so etwas sehen können,
Present Modally
Sie die kind-Eigenschaft auf Present Modally
.
In diesem Beispiel werden wir nicht alle Effekte sehen, da einige von ihnen wenig Code benötigen.
Beginnen wir mit fullscreen
. Dieser Effekt ist standardmäßig ausgewählt, wenn Sie die Present Modally
in der Registerkarte Kind
auswählen auswählen. Beim Erstellen und Ausführen belegt der 2. ViewController
den gesamten Bildschirm ViewController
iPad.
Weiter ist pageSheet
. Sie können diese Option auf der Registerkarte " Presentation
auswählen. Bei dieser Option ähnelt der 2. ViewController
im Hochformat des Vollbildmodus, im ViewController
ist der 2. ViewController
jedoch sehr schmal. Inhalte, die nicht von 2nd ViewController
werden, werden ebenfalls abgeblendet.
Beim formSheet
Stil wird der 2. ViewController
in der Mitte des Geräts platziert und die Größe ist kleiner als die des Geräts. Wenn sich das Gerät im ViewController
befindet und die Tastatur sichtbar ist, wird die ViewController
nach oben ViewController
, um den ViewController
.
Der letzte Stil, den wir versuchen werden, ist popover
. Um diesen Stil auszuwählen, wählen Present as Popover
in der Registerkarte Kind
Present as Popover
. Der 2. ViewController
wird als kleines Popover dargestellt (Größe kann eingestellt werden). Der Hintergrundinhalt ist abgeblendet. Jede Berührung außerhalb des Popovers würde den Popover verwerfen. Ihr Attributes Inspector
sollte in etwa so aussehen:
Anchor
ist das Oberflächenelement, auf das der Popover-Pfeil zeigen soll. Directions
sind die Richtungen, in die Ihr Anker Anchor
zeigen darf.
Es gibt mehr als diese grundlegenden modalen Präsentationsstile, aber sie sind wenig kompliziert zu erreichen und erfordern etwas Code. Weitere Einzelheiten finden Sie in der Apple-Dokumentation.