Question

Je veux que ma sous-classe UIView à se comporter de telle sorte que quand il est monté dans l'orientation portrait est a une certaine taille et une autre taille lorsqu'il est monté en mode paysage.

Est-il possible d'avoir le point de vue indiquer au contrôleur de vue qui est le redimensionnement lorsque l'orientation change qu'il a cette « taille idéale »?

Pour clarifier, je suis convaincu que ce n'est pas quelque chose qui peut être fait avec le masque de redimensionnement automatique. Je pensais aussi que sizeThatFits: serait ce que je dois mais je ne l'ai pas appelé quand se change d'orientation

.

Je sais aussi que je peux obtenir ce fait en remplaçant layoutSubviews du superview (ou peut-être une autre méthode du contrôleur de vue, mais je voudrais avoir ce comportement intégré dans le but de faciliter la réutilisation.

Était-ce utile?

La solution

Vous obtenez plusieurs messages lorsque l'appareil tourne:

- shouldAutorotateToInterfaceOrientation:;
- willRotateToInterfaceOrientation:duration:;
- didRotateFromInterfaceOrientation:

Vous pouvez les utiliser pour re-mise en page votre point de vue lorsque l'utilisateur tourne.

Si vous ne souhaitez pas utiliser un contrôleur de vue, vous pouvez vous inscrire à la notification UIDeviceOrientationDidChangeNotification.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top