Frage

Ich mag meine UIView Unterklasse des Verhalten so, wenn es im Hochformat montiert wird, ist eine gewisse Größe hat und eine andere Größe, wenn im Querformat montiert.

Ist es möglich, die Ansicht, zeigt die View-Controller zu haben, die es Ändern der Größe, wenn die Ausrichtung ändert, dass sie diese „ideale Größe“ haben?

Um zu klären, ich bin zuversichtlich, dass dies nicht etwas, das mit dem automatischen Größen Maske durchgeführt werden kann. Ich dachte auch, dass sizeThatFits. Wäre, was ich brauche, aber ich habe nicht gesehen, es aufgerufen werden, wenn die Ausrichtung geändert

Ich bin auch bewusst, dass ich kann dies durch zwingende layoutSubviews des Super getan (oder vielleicht eine andere Methode der View-Controller, aber ich möchte dieses Verhalten in der Ansicht eingebettet habe Wiederverwendung zu erleichtern.

War es hilfreich?

Lösung

Sie erhalten mehrere Nachrichten, wenn das Gerät dreht:

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

Sie können diese wieder das Layout Ihrer Ansicht verwenden, wenn der Benutzer sich dreht.

Wenn Sie nicht über einen View-Controller verwenden möchten, können Sie für die UIDeviceOrientationDidChangeNotification Benachrichtigung registrieren.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top