Подождите, прежде чем выполнить istruction - PullRequest
0 голосов
/ 04 июня 2010

Я не хочу выполнять анимацию перед выходом из вида. Проблема в том, что если я напишу этот код:

[self animationMethod];
[self removeFromSuperview];

анимация не представлена, потому что инструкция removeFromSuperview выполняется немедленно, я полагаю.

Есть способ указать, что метод removeFromSuperview должен выполняться через указанное время? спасибо.

1 Ответ

0 голосов
/ 04 июня 2010

Использует ли animationMethod раздел [UIView beginAnimations: context:]? Если это так, вы должны использовать делегат анимации. В частности:

[UIView beginAnimations:nil context:nil];
[UIView setAnimationDelegate:self];
[UIView setAnimationDidStopSelector:@selector(removeFromSuperview)];
//Your animation stuff
[UIView commitAnimations];

В противном случае, если вы делаете что-то еще, что не имеет обратного вызова, вы можете вызвать метод после задержки, используя:

[self performSelector:@selector(removeFromSuperview) withObject:nil afterDelay:0.25f];

, где 0,25f - задержка, которую вы хотите использовать. Я выбрал 0,25, потому что это длина анимации по умолчанию для блоков анимации (как показано выше).

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