UICollectionViewTransitionLayout - Nachahmung des iOS7-Fotosammlung-Layouts

8

Ich lese Apples Richtlinien auf implementieren von Änderungen in einer Sammlungsansicht , versuchen, die Fotos App zu imitieren. Wenn Sie ein Bild auswählen, "wächst" das Bild von dem Bereich, in dem es sich in der Sammlungsansicht befindet, zu einer Ansicht in voller Größe.

Apple-Notizen mit einem UICollectionViewLayout -Objekt, aber für mich sieht es sehr unordentlich aus und auch das endgültige Bild in der Galerie in voller Größe ist nicht sichtbar, da die Animation auf der Sammelansicht zentriert ist.

Mein Code ist wie folgt

%Vor%     
Avner Barr 23.09.2013, 11:09
quelle

2 Antworten

0

Wie wäre es, wenn Sie einen UIViewController mit einem UIImageView unter Verwendung eines benutzerdefinierten Übergangs darstellen? Dieses Tutorial hat mir geholfen.

Ссылка

    
Misha 04.02.2014 16:17
quelle
0

Ich weiß, dass Fotos das Layout verwenden, um den Navigationsübergang auf UICollectionViewController ( useLayoutToLayoutNavigationTransitions , um die Animation zu erreichen, wenn man von Momenten zu Jahren usw. geht (Session 218 im 2013, wenn ich mich nicht irre)

Wenn Sie versuchen, Übergänge zwischen den Auflistungsansichten mit verschiedenen Datenquellen zu erstellen, werden die Dinge wirklich interessant. Die Jungs von Objc.io haben dazu ein schönes Stück geschrieben.

Wenn Sie jedoch versuchen, den Pinch-to-open-Effekt zu implementieren, ist das tatsächlich viel einfacher als es scheint.

Nehmen wir einmal an, wir wollen einfach eine Zelle aus der Sammlungsansicht animieren, um sie zu einem Vollbild-View-Controller zu erweitern. In diesem Fall müssen Sie lediglich einen benutzerdefinierten Viewcontroller-Übergang implementieren, bei dem Sie eine Transformation effektiv auf den FullScreenPhotosViewController anwenden, damit er an der Stelle der Zelle beginnt. Dann animieren wir einfach die Transformation in den Vollbildmodus.

Sobald Sie damit arbeiten, es interaktiv zu machen, besteht der Trick in diesem Schritt darin, die Sammlungsansichtszelle auszublenden, während Sie den Übergang starten, da Sie den Vollbild-Controller und nicht die Zelle animieren wollen t es verstecken dann wird die Zelle noch sichtbar sein und es wird verwirrend aussehen). Im Grunde genommen ist die Zelle, die Sie jetzt unter Ihren Fingern halten, tatsächlich der FullScreenPhotosViewController, mit dem Sie die Transformation steuern und die ursprüngliche Zelle verstecken. Wenn Sie den Controller erweitern, aktualisieren Sie den Prozentabschluss, sodass die Navigationsleiste neben dem Übergang aktualisiert wird.

Wenn Sie mehr Details haben wollen, kann ich einbeziehen, wie Sie die Transformationen etc. berechnen können, wenn ich an einen Computer komme?

    
Daniel Galasko 16.07.2014 18:21
quelle