У меня есть пользовательское представление, которое должно отслеживать местоположение пользователя. Я поместил следующий код в touchesBegan
, а также в touchesMoved
:
[UIView animateWithDuration:0.2 delay:0.0 options:UIViewAnimationOptionBeginFromCurrentState animations:^{
cursorView.center = locationOfTouch;
} completion:^(BOOL finished){}];
Мне это кажется довольно простым. Я ожидаю, что представление всегда анимируется к текущему местоположению пользователя, даже если это местоположение изменяется, и представление все еще анимируется (из-за опции beginFromCurrentState).
Тем не менее, каждая анимация заканчивается полностью. Они не «переходят» на новую анимацию, нет, сначала они заканчивают, затем запускают новую анимацию.
Я пытался добавить эту строку в touchesMoved
:
[cursorView.layer removeAllAnimations];
Ничего не делает. Анимация не отменена. Есть идеи?