2015-10-27 4 views
8

Kann jemand die Unterschiede zwischen diesen beiden Methoden erklären? The docs for UIViewController explizit angeben, dass ViewWillTransitionToSize sollte für die Verwaltung von Rotationen verwendet werden, aber ein Klicken durch die UIContentContainer page, die istTransitionToTraitCollection Methode macht einen verwirrenden Eingang.viewWillTransitionToSize: vs willTransitionToTraitCollection:

Ich glaube, ich verstehe den konzeptionellen Unterschied zwischen einer Größenklassenänderung (Trait Collection Änderung) und einer Größenänderung, aber ich bin mir nicht sicher, welche Methode in welchen Umständen zu implementieren. Klärung durch einen UIKit-Assistenten wäre hilfreich!

Antwort

16

Immer, wenn Sie etwas als Antwort auf einen Benutzer drehen möchten, sollten Sie viewWillTransitionToSize verwenden, wenn Sie sicher sind, dass Ihre Aktionen ausgeführt werden, da dies jedes Mal aufgerufen wird, wenn das Fenster der Anwendung sich ändert.

Wenn Sie nur Maßnahmen ergreifen soll, wenn der Zug Sammlung ändert, zum Beispiel wenn Sie einen bestimmten collectionViewLayout Satz für eine Compact Größenklasse haben und eine andere für Sie Regular verwenden möchten Sie willTransitionToTraitCollection verwenden.

Wenn sich die Merkmalssammlung ändert, ändert sich auch die Größe. Aber es funktioniert nicht umgekehrt. Ein iPad im Hochformat und ein iPad in der Landschaft haben die gleichen Merkmale, sind aber unterschiedlich groß. Fügen Sie der Mischung Multitasking hinzu und Sie haben eine Vielzahl von Größen, die nur zwei Größenklassen zugeordnet werden können.

+0

Danke, alles klar jetzt. – Gregzo

Verwandte Themen