Ich versuche, neue iOS 7-APIs zu behandeln, die interaktive, animierte View Controller-Übergänge ermöglichen, einschließlich Übergängen zwischen UICollectionViewLayout
s.UICollectionView interaktiver Layoutübergang mit iOS 7 APIs
ich getroffen habe und Beispielcode geändert von WWDC 2013 „iOS-CollectionViewTransition“, die hier gefunden werden kann: https://github.com/timarnold/UICollectionView-Transition-Demo
Die ursprüngliche Demo, die nicht in einem Arbeitszustand war, als ich es gefunden haben, können mit einem Apple Developer-Konto, hier: https://developer.apple.com/downloads/index.action?name=WWDC%202013
Meine Version der App präsentiert eine Sammlungsansicht mit zwei Layouts, beide UICollectionViewFlowLayout
Layouts mit unterschiedlichen Eigenschaften.
Wenn Sie auf eine Zelle im ersten Layout tippen, wird die Animation in der zweiten Ebene aktiviert, einschließlich des abgetippten Objekts, zu dem im neuen Layout gescrollt wird. Zuerst war ich verwirrt darüber, wie die neue Auflistungsansicht ihren Inhaltsversatz einstellen kann, so dass die entsprechende Zelle sichtbar ist, aber ich habe gelernt, dass dies auf der Grundlage der Eigenschaft selected
der präsentierenden Sammlungsansicht geschieht.
Das Klicken auf ein Objekt im ersten Layout sollte auch mit dem neuen Layout animiert werden. Verwenden Sie dazu UICollectionViewTransitionLayout
, UIViewControllerAnimatedTransitioning
und UIViewControllerInteractiveTransitioning
. Dies funktioniert, aber die eingeklemmte Zelle ist nicht scrollte in das neue Layout oder das Übergangslayout.
Ich habe versucht, die selected
Eigenschaft auf die eingeklemmte Zelle an verschiedenen Orten (um zu versuchen, das beschriebene Verhalten beim Tippen auf ein Element zu drücken, um die neue Ansicht Controller drücken), vergeblich.
Irgendwelche Ideen zur Lösung dieses Problems?
Das sieht vielversprechend aus, ich freue mich wirklich darauf zu schauen und zu sehen, ob es meine Probleme löst. Eine Frage: Gibt es in Ihrem Beispielprojekt tatsächlich eine interaktive Komponente (z. B. um zwischen den Layouts hin- und herzuwechseln und den Übergang möglicherweise aufzuheben)? (Ich habe keine offensichtliche gefunden) –
Nein, gibt es nicht. Ich könnte dieses Wochenende ein zweites Beispiel nehmen. –
Das verlinkte Repository ist ausgezeichnet. Danke, dass Sie sich die Zeit genommen haben, es zu erstellen und zu teilen. – jrturton