IOS-UI基础-UIImageView帧动画

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 需要设置

放置比较大的图片, 欢迎页面

时间: 2024-10-26 19:41:12

IOS-UI基础-UIImageView帧动画的相关文章

UIImageView帧动画相关属性和方法-15-05-04

UIImageView帧动画相关属性和方法 •@property(nonatomic,copy) NSArray *animationImages; Ø需要播放的序列帧图片数组(里面都是UIImage对象,会按顺序显示里面的图片) Ø •@property(nonatomic) NSTimeInterval animationDuration; Ø帧动画的持续时间 • •@property(nonatomic) NSInteger animationRepeatCount; Ø帧动画的执行次数(

UIImageView帧动画清除缓存图片,防止图片占用内存太多

我们在使用UIImageView帧动画时会碰到加载到内存的图片不会自动释放,占用很多的内存,这时我们可能使用 UIImage imageWithContentsOfFile 并配合 imageView.animationImages = nil; 来清理不用的缓存动画图片.具体如下: UIImageView帧动画相关属性和方法: 需要播放的序列帧图片数组(里面都是UIImage对象,会按顺序显示里面的图片) @property(nonatomic,copy) NSArray *animation

关于UIImageView帧动画内存无法释放的问题

UIImageView帧动画相关属性和方法: 需要播放的序列帧图片数组(里面都是UIImage对象,会按顺序显示里面的图片) @property(nonatomic,copy) NSArray *animationImages; 帧动画的持续时间 @property(nonatomic) NSTimeInterval animationDuration; 帧动画的执行次数(默认是无限循环) @property(nonatomic) NSInteger animationRepeatCount;

iOS中UIImageView帧动画相关属性和方法

@property(nonatomic,copy)NSArray *animationImages; 需要播放的序列图片数组(里面都是UIImage对象,会按顺序显示里面的图片) @property(nonatomic)NSTimeInterval animationDuration; 帧动画的持续时间 @property(nonatomic)NSInteger animationRepeatCount; 帧动画的执行次数(默认是无限循环) - (void)startAnimating; 开始执

UIImageView帧动画相关属性和方法

@property(nonatomic,copy) NSArray *animationImages; 需要播放的序列帧图片数组(里面都是UIImage对象,会按顺序显示里面的图片) @property(nonatomic) NSTimeInterval animationDuration;帧动画的持续时间 @property(nonatomic) NSInteger animationRepeatCount; 帧动画的执行次数(默认是无限循环) - (void)startAnimating;开

iOS UI基础控件之UIImageView

一.UIImageView和UIImage UIImageView是iOS中用于显示图片的类,UIImage是用于存储图片数据的类:iOS中几乎所有看到的图片数据都存储在UIImage中,同时所要的图片都是用UIImageView来显示:UIImageView和UIImage关系如下图: 二. 创建UIImageView的两种方式 1.自己设置图片位置和尺寸 "` UIImageView *iv = [[UIImageView alloc] init]; //创建的图片, 没有默认的宽高 iv.

IOS开发UI基础UIImageView属性属性

UIImageView属性 1.Image 设置图片,默认显示 UIImageView *_imageView = [[UIImageView alloc]init]; _imageView.image = [UIImage imageNamed:@"me.png"]; 2.highlightedImage 设置高亮状态下显示的图片_imageView.highlightedImage = [UIImage imageNamed:@"other.png"]; 3.a

IOS UI基础04

动画 1.头尾式动画 动画开始 [UIView beginAnimations:nil context:nil]; 设置动画时间 [UIView s ! etAnimationDuration:3]; [UIView setAnimationDelegate:self]; 只要写在开始和结束之间的代码, 就会被执行动画 但是: 并不是所有的代码都能够执行动画 只有属性声明中说明了是animatable的属性,才可以执行UIView动画 CGRect tempFrame2 = self.hudLa

Ios UI基础02

UIView 继承于UIView的控件都可以添加子控件 属性 superview 谁调用superview, 那么获取的就是谁的父控件 subviews subviews是用于获取所有的子控件 谁调用subviews, 那么就是获取谁的子控件 方法 removeFromSuperview 从父控件中移除,谁调用就移除谁 addSubview 添加到父控件中,谁调用就将子控件添加到谁 UILabel 文本控件 继承UIView 属性 @property(nonatomic) NSInteger n