1. 创建一个可变数组 --> mutableArray, 用来存放, UIImage 对象, 要做动画的图片
2. 执行一个for循环
1. 拼接图片名称
2. 实例化图片对象 --> UIImage
3. 把UIImage对象添加到可变数组中
3. 把可变数组赋值给UIImageView的animationImages
为imageView 设置 图片 --> 数组中最后一个UIImage对象
设置重复次数: animationRepeatCount : 如果不设置, 默认是无限循环
设置动画时间: 根据图片的个数来决定
4. 开启动画
[animationImageView startAaimating];
加载图片的两种方式:
[UIImage imageNamed:imageString] : 就会产生缓存
优点: 下次访问的速度回比较快
缺点: 占用内存空间
// 通过 imageWithContentsOfFile: 加载图片 加载的图片比较大, 占用内存
优点: 不会产生缓存
缺点: 速度慢
NSString *imageString = [NSString stringWithFormat:@"%@%03d.png",name, i];
// 读取文件路径 , 要加上 文件的后缀
NSString *path = [[NSBundle mainBundle] pathForResource:imageString ofType:nil];
UIImage *image = [UIImage imageWithContentsOfFile:path];
延迟 duration 时间之后, self 调用 clearArrayPoint 参数 为nil
[self performSelector:@selector(clearArrayPoint) withObject:nil afterDelay:duration];
/**
_animationImageView : 在 duration 之后, 执行 setAnimationImages: 这个方法, 参数为nil
*/
[_animationImageView performSelector:@selector(setAnimationImages:) withObject:nil afterDelay:duration];
Assets.xcassets : 在打包的时候, 会把这个文件夹, 进行压缩, 加密 只能通过 imageNamed: 访问
素材图片 , 比较小的图片
如果放到bundle 中: imageNamed: 和 imageWithContentsOfFile: 都可以方法
使用图片的时候, 不管是jpg 还是 png 都要加上后缀名
如果通过代码的方式 设置图片 png 不用设置后缀名 ,jpg 需要设置
放置比较大的图片, 欢迎页面