когда я делаю анимацию со следующим кодом:
NSArray *images=[NSArray arrayWithObjects:[UIImage imageNamed:@"shavit_1.png"],[UIImage imageNamed:@"shavit_1.png"],[UIImage imageNamed:@"shavit_2.png"],[UIImage imageNamed:@"shavit_3.png"],[UIImage imageNamed:@"shavit_4.png"],[UIImage imageNamed:@"shavit_5.png"],[UIImage imageNamed:@"shavit_6.png"],[UIImage imageNamed:@"shavit_7.png"],[UIImage imageNamed:@"shavit_8.png"],[UIImage imageNamed:@"shavit_9.png"],[UIImage imageNamed:@"shavit_10.png"],[UIImage imageNamed:@"shavit_11.png"],[UIImage imageNamed:@"shavit_12.png"],[UIImage imageNamed:@"shavit_13.png"],[UIImage imageNamed:@"shavit_14.png"],[UIImage imageNamed:@"shavit_15.png"],[UIImage imageNamed:@"shavit_16.png"],[UIImage imageNamed:@"shavit_17.png"],[UIImage imageNamed:@"shavit_18.png"],[UIImage imageNamed:@"shavit_19.png"],[UIImage imageNamed:@"shavit_20.png"],[UIImage imageNamed:@"shavit_21.png"],[UIImage imageNamed:@"shavit_22.png"],[UIImage imageNamed:@"shavit_23.png"],[UIImage imageNamed:@"shavit_24.png"],[UIImage imageNamed:@"shavit_25.png"],nil];
shavitimage.animationImages=images;
shavitimage.animationDuration=2.0;
shavitimage.animationRepeatCount=1;
[shavitimage startAnimating];
[images release]; //release the used array
[self performSelector:@selector(animation_ends) withObject:nil afterDelay:2.0];//after 2 seconds put astatic image
timer=[NSTimer scheduledTimerWithTimeInterval:10.0 target:self selector:@selector(timerFireMethod:) userInfo:nil repeats:NO];
}
-(void)animation_ends{
[shavitimage stopAnimating];//the UIImageView return to static mode
shavitimage.image=[UIImage imageNamed:@"shavit_25.png"];
self.view.userInteractionEnabled=YES;
}
анимация работает хорошо, и приложение работает хорошо после окончания анимации.
но когда я делаю анимацию со следующим кодом:
NSMutableArray *images=[NSMutableArray array]; //insrt the images dynamiclly
for(int i=1;i<=25;i++)
{
NSString *file=@"shavit_";
file=[file stringByAppendingFormat:@"%d",i];
NSString *filePath = [[NSBundle mainBundle] pathForResource:file ofType:@"png"];
[images addObject:[UIImage imageWithContentsOfFile:filePath]];
[file release];
[filePath release];
}
shavitimage.animationImages=images;
shavitimage.animationDuration=2.0;
shavitimage.animationRepeatCount=1;
[shavitimage startAnimating];
[images release]; //release the used array
[self performSelector:@selector(animation_ends) withObject:nil afterDelay:2.0];//after 2 seconds put astatic image
timer=[NSTimer scheduledTimerWithTimeInterval:10.0 target:self selector:@selector(timerFireMethod:) userInfo:nil repeats:NO];
}
-(void)animation_ends{
[shavitimage stopAnimating];//the UIImageView return to static mode
shavitimage.image=[UIImage imageNamed:@"shavit_25.png"];
self.view.userInteractionEnabled=YES;
}
анимация работает хорошо, но она складывается после. Почему это происходит?