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:

  1. fullScreen
  2. pageSheet
  3. formSheet
  4. currentContext
  5. custom
  6. overFullScreen
  7. overCurrentContext
  8. popover
  9. 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, Builder für anfängliche Schnittstelle

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, Geben Sie hier die Bildbeschreibung ein

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.

Geben Sie hier die Bildbeschreibung ein

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.

Geben Sie hier die Bildbeschreibung ein

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 .

Geben Sie hier die Bildbeschreibung ein

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:

Geben Sie hier die Bildbeschreibung ein

Anchor ist das Oberflächenelement, auf das der Popover-Pfeil zeigen soll. Directions sind die Richtungen, in die Ihr Anker Anchor zeigen darf.

Geben Sie hier die Bildbeschreibung ein

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.



Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow