在UIImageView
. 下面方法中的代码使图像看起来像是左右摇摆:
-(void) shakeAnimation
{
float degrees = 30; //the value in degrees
imgShake.autoresizingMask = UIViewAutoresizingNone;
[UIView animateWithDuration:0.20f delay:0 options:(UIViewAnimationOptionCurveLinear | UIViewAnimationOptionAllowUserInteraction | UIViewAnimationOptionAutoreverse | UIViewAnimationOptionRepeat) animations:^{
imgShake.transform = CGAffineTransformMakeRotation(degrees*M_PI/180);
} completion:^(BOOL finished) {
imgShake.transform = CGAffineTransformMakeRotation(1*M_PI/180);
NSLog(@"Shake finished");
}];
}
问题出在我调用该方法的位置。如果我在viewDidAppear
动画中调用该方法似乎可以正常工作......但由于其他原因我需要调用它viewDidLoad
。当我从viewDidLoad
动画函数调用该方法但不是以animateWithDuration
. 它可能要慢得多0.70f
。这里有什么我可能会丢失的吗?