Ich versuche this animationWie diese Zelle Animation mit UICollectionView implementieren
Für die Liste zu machen, ich glaube, ich UICollectionView
verwenden kann, aber die Animation Teil scheint schwierig zu sein.
Irgendeine Idee zu diesem Thema?
Ich versuche this animationWie diese Zelle Animation mit UICollectionView implementieren
Für die Liste zu machen, ich glaube, ich UICollectionView
verwenden kann, aber die Animation Teil scheint schwierig zu sein.
Irgendeine Idee zu diesem Thema?
Wenn Sie den springenden Animationsteil meinen, ist das nicht sehr schwierig - Apple hat eine Demo genau dieses Verhaltens in demselben Code für UIDynamics
(nur iOS7 +).
Es ist ein weiteres Beispiel hier, die ganz in der Nähe sieht, was Sie nach:
http://www.objc.io/issue-5/collection-views-and-uidynamics.html
Blick in der Mitte für ein animiertes Beispiel. Es verwendet sogar Auflistungsansichten.
Das ist sehr nah an dem, was ich brauche, aber ich möchte meine App zu unterstützt iOS6. – jAckOdE
Das wäre fertige Lösung (UICollectionView + iOS6 Dynamic), wenn ich einen Klon von UIDynamic für iOS6 finden könnte. Es wäre wahrscheinlich ein Wrapper von Box2d. Ich werde weiter schauen. – jAckOdE
Wie @Kendall sagte, müssen Sie wirklich versuchen UIDynamics
.
Für eine schnelle Problemumgehung habe ich nur versucht, unten Code. Es funktioniert etwas gut und hängt mit Ihrem Code zusammen. Ich weiß nichts über die Leistung. So kann es in Ihrem Projekt zu einem Leistungsmangel kommen.
Es ist nur eine Idee. Wenn es nicht für Sie funktioniert, lassen Sie es so wie es ist.
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
MyCollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"MyCollectionViewCell" forIndexPath:indexPath];
[UIView animateWithDuration:0.2 animations:^{
cell.transform = CGAffineTransformMakeTranslation(0.0, -50);
}];
[self delayBy:0.5 code:^{ // call block of code after time interval
[UIView animateWithDuration:0.3 animations:^{
cell.transform = CGAffineTransformIdentity;
}];
}];
return cell;
}
Verwenden Sie diesen Code in CollectionView-einfachen Beispielcode von Apple (verwenden Sie diese anstelle von Ihrem Block Stilcode: [self performSelector: @selector (wiederherstellen :) withObject: Zelle afterDelay: 0.5];) Es funktioniert nicht in iOS 6. In iOS 7 werden nur neue Zellen animiert, die in der Sammlungsansicht eingefügt wurden. – jAckOdE
Da dieser Code in der Methode 'cellForRowAtIndexPath:' enthalten ist, wird er nicht für die sichtbaren Zellen auf dem Bildschirm aufgerufen. Dazu müssen Sie die Zellen ohne Wiederverwendung erstellen oder sonst müssen Sie die Animation für sichtbare Zellen in 'scrollViewDidScroll:' Delegate-Methode von 'UIScrollView' behandeln (' UICollectionView' ist eine Unterklasse von 'UIScrollView'). Ich hoffe du bekommst was ich gesagt habe. –
Für Animation von UICollectionViewCell, Schicht der Zell animieren, wenn der UICollectionView im Delegatmethode decelarating .. –
Wenn startet Benutzer Scrollen, um die Schichten der sichtbaren Zellen auf bestimmte ‚-y‘ poisition bewegen und animieren und die Wiederherstellung y Position, wenn die Sammlung Ansicht Methode verzögern .. lassen Sie mich wissen, wenn dies sinnvoll ist .. –
https://github.com/TeehanLax/UICollectionView-Spring-Demo – souvickcse