Чтобы отменить все текущие анимации:
#import <QuartzCore/QuartzCore.h>
...
[view.layer removeAllAnimations];
Чтобы запустить новую анимацию, которая убивает существующие анимации, если таковые имеются, и начинает движение с того места, где в данный момент находится вид, - я думаю, это то, что вы хотите:
[UIView beginAnimations:nil context:nil];
[UIView setAnimationBeginsFromCurrentState:YES];
... and the rest of it ...
[UIView commitAnimations];
Надеюсь, один из них решит вашу проблему.