关于使用UIImageView显示一串图片组成动画效果的总结:
1》创建装这一串图片的容器,使用NSArray
NSMutableArray *images = [NSMutableArray array];
2》使用NSBudle类载入进来图片,然后每次载入进来一个图片就赋给一个UIImage对象,(注意:使用这个类载入进来的图片能够清除缓存,可是其它方法载入比方
UIImage *image = [UIImage imageNamed:fileName];方法载入的无法清除缓存。
)
NSString *fileName = [NSString stringWithFormat:@"%@_%02d.jpg",name, i]; // UIImage *image = [UIImage imageNamed:fileName]; // [images addObject:image]; NSBundle *bundle = [NSBundle mainBundle]; NSString *path = [bundle pathForResource:fileName ofType:nil]; UIImage *image = [UIImage imageWithContentsOfFile:path];3》把每个UIImage对象放入集合数组中。
[images addObject:image];
4》把容器数组赋给UIImageView的animationImages属性
self.tom.animationImages = images;
5》设置动画的属性。然后開始动画
self.tom.animationRepeatCount = 1; self.tom.animationDuration = images.count * 0.08; [self.tom startAnimating];
6》由于每次动画都要拔图片载入近内存,假设不清楚内存中无用的图片内存的占用就会非常高。所以清除内存的做法是
//清除图片缓存 CGFloat delay = self.tom.animationDuration + 0.05; [self.tom performSelector:@selector(setAnimationImages:) withObject:nil afterDelay:delay];