2013-08-29 6 views
0

Я двигаюсь два UIButtons с этой анимацией:UIView анимация прервана IOS

[UIView animateWithDuration:1.0 
           delay:0.0 
          options: UIViewAnimationCurveEaseInOut 
         animations:^{ 

          self.ViewA.frame = CGRectMake(self.ViewA.frame.origin.x, self.ViewA.frame.origin.y - 174, self.ViewA.frame.size.width, self.ViewA.frame.size.height); 
          self.ViewB.frame = CGRectMake(self.ViewB.frame.origin.x, self.ViewB.frame.origin.y - 174, self.ViewB.frame.size.width, self.ViewB.frame.size.height); 
         } 
         completion:^(BOOL finished){ 

         }]; 

но анимация работает до тех пор, пока пользователь не держит палец на UIButton, если он высвобождает анимация прерывается. Есть ли способ или что-то, чтобы определить, когда это произойдет, и зафиксировать положение кнопок?

+0

Где вы звоните по этому коду? –

+0

in if ([(UIPanGestureRecognizer *) состояние отправителя] == UIGestureRecognizerStateBegan) { – user2014474

+0

Что значит прерывать? Что происходит? – rdelmar

ответ

1

В вашем блоке завершения параметр finished сообщает вам, завершена ли ваша анимация или нет. Если его значение равно NO, то анимация была прервана. Вот как вы знаете, нужно ли фиксировать позиции и т. Д.

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