ios 8 modifier la taille de présenter/modal-vue-contrôleur
Dans ios 7 et avant, j'ai été mise à jour les limites de presentedViewController.vue.superview à la coutume de la taille de l'présenté-vue-contrôleur, mais il semble que ce ne serait pas le cas dans ios 8. Puisqu'il n'est pas superview peut être défini sur la vue-contrôleur(retour zéro lorsque vous essayez de l'appeler dans le débogueur).
Des suggestions pour mettre à jour la vue du contrôleur de la taille? Ce serait utilisée pour la présentation personnalisée de transition.
J'ai fait un dépôt Github BonsaiController juste pour ça.
OriginalL'auteur Xing | 2014-09-12
Vous devez vous connecter pour publier un commentaire.
Je suppose que la suite est plus facile et il fonctionne sous iOS 8:
preferredContentSize fonctionne bien pour moi. Mais j'ai besoin de changer ma position dans iOS 8. La propriété de qui je dois utiliser?
C'est la bonne réponse!
Ne fonctionne pas pour moi
Ne fonctionne pas sur iPhone (iOS 8.4), sera probablement travailler sur l'iPad.
OriginalL'auteur Ali
Dans le cas où tout le monde court dans ce, plus tard, voici comment je m'y résoudre.
Sous-classe de la UIPresentationController et retourner l'image dans frameOfPresentedViewInContainerView. Nourrir ce dans le transitioningDelegate que vous créez pour le presentedViewController.
Ou, vous pouvez définir l'image finale pour la presentedView dans le animateTransition: qui appartient à l'animateur de l'objet que vous avez créé pour transitioningDelegate. Cependant, c'est l'ancien iOS 7 façon de faire. Depuis Apple introduire UIPresentationController, n'importe quelle taille/cadre changements doivent être fait à la place qui est la méthode précédente je l'ai mentionné.
Voici quelques informations supplémentaires qui peuvent ne pas être directement liée à la résolution du problème.
Pour ceux d'entre vous qui n'ont jamais mis la main sur la pomme-vue-contrôleur de transition de l'api, comme moi avant, voici les étapes à suivre.
Créer YourTransitioningDelegate, ce qui est conforme UIViewControllerTransitioningDelegate. Ici, en général, trois choses doivent être définis, PresentationController, PresentedAnimationController, DismissedAnimationController.
Créer YourTransitionAnimator, ce qui est conforme UIViewControllerAnimatedTransitioning. Ici, les deux fonctions doivent être remplacer, transitionDuration et animateTransition(C'est là où l'animation se produit, l'ajout, la suppression et l'animation de la presentedView. Vous faire appeler completeTransition sur transitionContext à la fin de l'animation).
Sous-Classe UIPresentationController. Dépend de chaque individu, vous pouvez faire une tonne de choses ici. J'ai juste ajouté un dimmingView et changé l'image de presentedViewController.
Enfin, les raccordements avant de présenter le point de vue du contrôleur, qui est en train de changer la modalPresentationStyle être personnalisé et le réglage de la transition délégué.
Choses que j'ai trouvé vraiment utile, deux 2014 WWDC vidéos("Afficher les contrôleurs de progrès" et "d'Un regard à l'intérieur de présentation des contrôleurs") et l'exemple de projet à partir d'Apple(LookInside-photoEditingApp).
Oui, UIPresentationController est iOS 8 uniquement.
OriginalL'auteur Xing
Au lieu de sous-classement, vous pouvez utiliser le preferredContentSize propriété
OriginalL'auteur Jean Rapahel