我想在应用程序中来回摆动图像,就像按下时在iPhone图标上摆动一样。最好的方法是什么?
这是我首次尝试不使用动画GIF的动画。我认为该方法是稍微前后旋转图像以产生摆动效果。我看过使用CABasicAnimation和CAKeyframeAnimation。CABasicAnimation每次重复都会产生一个抖动,因为它跳到起始位置并且不会向内插。CAKeyframeAnimation似乎是解决方案,除了我无法使其正常工作。我肯定错过了什么。这是我使用CAKeyframeAnimation的代码(不起作用):
NSString *keypath = @"wobbleImage";
CAKeyframeAnimation *animation = [CAKeyframeAnimation animationWithKeyPath:keypath];
animation.duration = 1.0f;
animation.delegate = self;
animation.repeatCount = 5;
CGFloat wobbleAngle = 0.0872664626f;
NSValue *initial = [NSValue valueWithCATransform3D:CATransform3DMakeRotation(0.0f, 0.0f, 0.0f, 1.0f)];
NSValue *middle = [NSValue valueWithCATransform3D:CATransform3DMakeRotation(wobbleAngle, 0.0f, 0.0f, 1.0f)];
NSValue *final = [NSValue valueWithCATransform3D:CATransform3DMakeRotation(-wobbleAngle, 0.0f, 0.0f, 1.0f)];
animation.values = [NSArray arrayWithObjects:initial, middle, final, nil];
[imageView.layer addAnimation:animation forKey:keypath];
或可能有一个我不曾想到的完全简单的解决方案。感谢任何指针。谢谢!
噜噜哒
慕码人2483693
qq_遁去的一_1