我试图动画指示器到一个空的表单字段,所以我使用下面的方法动画到一个位置,扭转动画,并重复。在模拟器中,这可以正常工作,在我的3GS上,当完成块被调用时,它看起来好像闪烁了。指标简要显示在中间位置,而不是回到原点。UIView动画闪烁与自动反向
有关为什么会发生这种情况的任何想法?谢谢。
- (void)bounceFormIndicator {
if (formIndicator.superview == nil) {
return;
}
int bounceDistance = 24;
[UIView animateWithDuration:0.6
delay:0
options:UIViewAnimationOptionCurveEaseInOut | UIViewAnimationOptionAutoreverse | UIViewAnimationOptionAllowUserInteraction
animations:^{
CGRect indicatorFrame = formIndicator.frame;
indicatorFrame.origin.x += bounceDistance;
formIndicator.frame = indicatorFrame;
}completion:^(BOOL finished){
CGRect indicatorFrame = formIndicator.frame;
indicatorFrame.origin.x -= bounceDistance;
formIndicator.frame = indicatorFrame;
[self bounceFormIndicator];
}];
}
还是没有解决,但我找到了解决办法。我使用UIViewAnimationOptionRepeat选项并完全删除完成块。 – brianpartridge