2017-02-13 2 views
0

J'essaie de présenter un viewcontroller modalement sur mon application paysage SEULEMENT iOS. J'ai regardé et essayé modalPresentationStyle, mais selon les documentations tous ces styles montrent en plein écran dans un environnement horizontalement compact, ce qui se traduit par un plein écran pour moi. Le preferredContentSize ne fonctionne pas pour moi non plus.Présenter un contrôleur de vue modalement

Je suis en train de le présenter similar to this gif

+0

Vous pouvez simplement utiliser la vue personnalisée pour cela, ne pas vraiment besoin de faire un nouveau viewcontroller – Tj3n

+0

Vous pouvez afficher UIView personnalisé au lieu de UIViewController et UIView gris pour l'arrière-plan. –

+0

Je voudrais utiliser une vue, mais ma vue a fini par être beaucoup de logique. C'est similaire au gif mais c'est un tableau 2d dans une collection – saph

Répondre

-1

Essayez de cette façon:

Créer une UIView et régler est caché propriété = true

si vous avez besoin UIView, situé juste il est caché propriété = faux.

Ou

Chaque fois que vous besoin d'aucune vue. Vous avez juste besoin de créer cette vue par code, puis ajouterSubView. Lorsque votre travail est terminé, supprimez simplement cette vue de la sous-vue des parents

0

Ok, donc j'ai fini par vérifier le code source du gif que j'ai lié. Dans ce scénario, ils ont utilisé une nouvelle fenêtre au-dessus de l'autre fenêtre, ce qui me donne tout ce dont j'ai besoin. La beauté est dans la réutilisabilité et l'indépendance du viewcontroller je l'affiche, c.-à-d. Non attaché à une vue et non un enfant contrôleur etc.

Donc pour résumer: Faire un autre UIWindow avec UIWindowLevelAlert sur le dessus de la fenêtre principale .