Ios7 iOS 7-核心动画不适用于UICollectionViewCell

Ios7 iOS 7-核心动画不适用于UICollectionViewCell,ios7,core-animation,Ios7,Core Animation,我在UICollectionView中有一个简单的单元格图标晃动动画,类似于SpringBoard编辑模式。动画在iOS 6中运行良好,但在iOS 7中不起作用 下面是示例代码 - (void)startQuivering { CABasicAnimation *quiverAnim = [CABasicAnimation animationWithKeyPath:@"transform.rotation"]; float startAngle = (-1) * M_PI/180

我在UICollectionView中有一个简单的单元格图标晃动动画,类似于SpringBoard编辑模式。动画在iOS 6中运行良好,但在iOS 7中不起作用

下面是示例代码

- (void)startQuivering
{
    CABasicAnimation *quiverAnim = [CABasicAnimation animationWithKeyPath:@"transform.rotation"];
    float startAngle = (-1) * M_PI/180.0;
    float stopAngle = -startAngle;
    quiverAnim.fromValue = [NSNumber numberWithFloat:startAngle];
    quiverAnim.toValue = [NSNumber numberWithFloat:3 * stopAngle];
    quiverAnim.autoreverses = YES;
    quiverAnim.duration = 0.12;
    quiverAnim.repeatCount = HUGE_VALF;
    float timeOffset = (float)(arc4random() % 100)/100 - 0.50;
    quiverAnim.timeOffset = timeOffset;
    CALayer *layer = self.layer;
    [layer addAnimation:quiverAnim forKey:@"quivering"];
}
类似地,停止抖动的动画

- (void)stopQuivering
{
    CALayer *layer = self.layer;
    [layer removeAnimationForKey:@"quivering"];
}
在自定义UICollectionViewCell类中的applyLayoutAttributes:method中调用这些方法,具体取决于长按手势和相关标志


我无法解决这个问题,所以我需要开发人员的帮助。

最终解决了这个问题。它与此问题类似-applyLayoutAttributes:未被正确调用,可以通过重写自定义UICollectionViewLayoutAttributes子类中的isEqual:方法并调用super-applyLayoutAttributes:来解决此问题。

最终解决了此问题。它与此问题类似-applyLayoutAttributes:未正确调用,可以通过重写自定义UICollectionViewLayoutAttributes子类中的isEqual:方法并调用super-applyLayoutAttributes:来解决此问题