Recherche…


Introduction

Les styles de présentation modale sont utilisés lorsque vous passez d'un contrôleur de vue à un autre. Il y a 2 façons de réaliser cette personnalisation. L'un se fait par code et l'autre par Interface Builder (à l'aide de segues). Cet effet est obtenu en définissant la variable modalPresentationStyle sur une instance de UIModalPresentationStyle enum. modalPresentationStyle propriété modalPresentationStyle est une variable de classe de UIViewController et permet de spécifier comment un ViewController est présenté à l'écran.

Remarques

Rappelez-vous toujours la mention suivante d'Apple.

Dans un environnement compact horizontalement, les contrôleurs de vues modales sont toujours présentés en plein écran. Dans un environnement horizontal régulier, il existe plusieurs options de présentation différentes.

Exploration de ModalPresentationStyle à l'aide d'Interface Builder

Ce sera une application très basique qui illustrera différents ModalpresentationStyle dans iOS. Selon la documentation trouvée ici , il existe 9 valeurs différentes pour UIModalPresentationStyle qui sont les suivantes,

  1. fullScreen
  2. pageSheet
  3. formSheet
  4. currentContext
  5. custom
  6. overFullScreen
  7. overCurrentContext
  8. popover
  9. none

Pour configurer un projet, créez simplement un projet iOS normal et ajoutez 2 ViewControllers . Placez un UIButton dans votre ViewController initial et connectez-le à 2nd ViewController via un mécanisme Target -> Action . Pour distinguer les deux ViewControllers , définissez la propriété d'arrière-plan de UIView dans ViewController une autre couleur. Si tout se passe bien, votre Interface Builder devrait ressembler à ceci, Créateur d'interface initial

Assurez-vous de construire ce projet et de l'exécuter sur iPad (pour plus d'informations sur les raisons de l'iPad, reportez-vous à la section Remarques). Une fois que vous avez terminé la configuration de votre projet, sélectionnez-le et accédez à l' attributes inspector . Vous devriez pouvoir voir quelque chose comme ça, entrer la description de l'image ici

Définissez la propriété aimable à Present Modally .

Maintenant, nous ne verrons pas tous les effets dans cet exemple car certains d'entre eux nécessitent peu de code.

Commençons par fullscreen . Cet effet est sélectionné par défaut lorsque vous sélectionnez l' Present Modally en Kind . Lorsque vous construisez et exécutez, le 2nd ViewController occupera tout l'écran de votre iPad.

entrer la description de l'image ici

Suivant est la pageSheet . Vous pouvez sélectionner cette option depuis l'onglet Presentation . Dans cette option, lorsque le périphérique est en mode portrait, le 2nd ViewController est similaire au plein écran, mais en mode paysage, 2nd ViewController réduit considérablement la largeur du périphérique. De plus, tout contenu non couvert par 2nd ViewController sera grisé.

entrer la description de l'image ici

Pour le style formSheet , le 2nd ViewController est placé au centre du périphérique et sa taille est inférieure à celle du périphérique. De même, lorsque l'appareil est en mode paysage et que le clavier est visible, la position de la vue est ajustée vers le haut pour afficher le ViewController .

entrer la description de l'image ici

Le dernier style que nous allons essayer est le popover . Pour sélectionner ce style, sélectionnez Present as Popover onglet Present as Popover in Kind . Le 2nd ViewController est présenté sous la forme d'un petit popover (la taille peut être définie). Le contenu d'arrière-plan est grisé. Tout tapotement en dehors du popover rejetterait le popover. Votre Attributes Inspector devrait ressembler à ceci,

entrer la description de l'image ici

Anchor est l'élément d'interface utilisateur auquel vous souhaitez que la flèche de votre popover pointe. Directions sont les directions que vous autorisez votre Anchor popover à pointer.

entrer la description de l'image ici

Il y a plus que ces styles de présentation modaux de base, mais ils sont peu compliqués à réaliser et nécessitent du code. Plus de détails peuvent être trouvés dans la documentation Apple.



Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow