2010-08-31 3 views
2

У меня есть CABasicAnimation, которую я выполняю на нескольких уровнях, и все, что он делает, - это перемещение UIImageView на 10 пикселей, а затем назад. Я хочу, чтобы это продолжалось до бесконечности. Когда анимация заканчивается, я не могу понять, как заставить ее сделать это снова! Я понимаю theres метод animationDidStop, но это не решает мою проблему, потому что я не могу обнаружить слой, который перестал двигаться.CABasicAnimation Repeat себя

Как добиться анимации UIImageView в постоянной анимации вверх и вниз? Я попытался с [UIImageView beginAnimations] и т.д ... но не comulative значения для тех типов анимации

ответ

2
myBasicAnimation.removedOnCompleted = NO; 
myBasicAnimation.fillMode = kCAFillModeForwards; 
myBasicAnimation.cumulative = YES; 

Затем установите остальные свойства, как вы нормальный бы создать анимацию. Установите repeatCount, fromValue и toValue.

+0

Я не понимаю, как это заставляет анимацию повторять после завершения? Я не хочу устанавливать repeatCount на какое-то произвольное большое число, я просто хочу, чтобы он повторялся после анимации ... – Parad0x13

+0

@ Parad0x13 Я не вижу, где предоставленное решение задает счетчик повторов. Это просто заставляет анимацию удаляться после ее запуска один раз, в результате чего она запускается неограниченно (или, по крайней мере, это мое понимание) –

+0

Это будет поддерживать анимацию на экране, в последнем значении анимации и накапливать значения, сколько раз вы указываете. Если вы хотите, чтобы он повторялся навсегда, просто установите repeatCount = HUGE_VALF; – bstahlhood

Смежные вопросы