Я подключил два метода ниже, чтобы отделить кнопки в моем пользовательском интерфейсе, но заметил, что после нажатия кнопки "ВЕРСИЯ 1" я не мог нажать кнопку еще раз, пока не закончилась продолжительность анимации в этом методе. Я понял, что анимация использует свой собственный поток, чтобы не блокировать основное приложение.
// VERSION 1
-(IBAction)fadeUsingBlock {
NSLog(@"V1: Clicked ...");
[myLabel setAlpha:1.0];
[UIView animateWithDuration:1.5 animations:^{
[myLabel setAlpha:0.0];
}];
}
Более старая версия версии (ниже) позволяет нажатию кнопки до окончания таймера анимации, просто сбросив таймер, чтобы начать заново. Должны ли они оба работать одинаково, я что-то упустил или произошло изменение в работе между 3.2 и 4?
// VERSION 2
-(IBAction)fadeUsingOld {
NSLog(@"V2: Clicked ...");
[myLabel setAlpha:1.0];
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:1.5];
[myLabel setAlpha:0.0];
[UIView commitAnimations];
}
Cheers gary