Конец анимации UIView - PullRequest
       1

Конец анимации UIView

2 голосов
/ 12 сентября 2011

Я использую UIView анимацию в своем приложении:

        [UIView beginAnimations:nil context:NULL];
        [UIView setAnimationDuration:1];
        //do some animation
        [UIView commitAnimations];

Теперь есть вероятность, что анимация займет пару секунд, чтобы закончить.Итак, есть ли способ узнать, когда анимация закончилась?

Ответы [ 2 ]

9 голосов
/ 12 сентября 2011

Используйте новейшие блочные методы анимации, предоставляемые Apple, как:

    [UIView animateWithDuration:0.5 
                      delay:0.0 
                    options:UIViewAnimationOptionBeginFromCurrentState 
                 animations:^{
                     //animation block
                 }
                 completion:^(BOOL finished){//this block starts only when 
                 //the animation in the upper block ends
                 //so you know when exactly the animation ends
     }];

Метод, который вы использовали, скоро будет устаревшим ...

2 голосов
/ 12 сентября 2011

Я еще не использовал это сам, но есть метод setAnimationDidStopSelector, который позволяет вам определять селектор, который должен быть вызван, когда анимация закончится.

Также см. Документацию в Apple для UIView .

Есть также пример на сайте Рэя Вендерлиха

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...