Я пытаюсь анимировать индикатор в пустое поле формы, поэтому я использую метод ниже, чтобы анимировать положение, отменить анимацию и повторить . В симуляторе это работает нормально, на моем 3GS похоже, что есть мерцание прямо при вызове блока завершения. Индикатор ненадолго отображается в средней позиции, а не в исходной точке.
Есть мысли о том, почему это происходит? Спасибо.
- (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];
}];
}