纯代码:设置imageView帧动画

@interface ViewController ()

{

UIImageView *_imgView;

NSMutableArray<UIImage *> *_imageArr;

}

@end

@implementation ViewController

- (void)viewDidLoad {

[super viewDidLoad];

_imgView = [[UIImageView alloc] initWithFrame:CGRectMake(50, 300, 300, 200)];

_imgView.image = [UIImage imageNamed:@"1.jpg"];

[self.view addSubview:_imgView];

// 1.1 实例化可变数组用来 加载所有的图片

_imageArr = [NSMutableArray array];

for (int i = 0; i<20; i++) {

// 获取图片的名称

NSString *imageName = [NSString stringWithFormat:@"%d", i+1];

// 创建UIImage对象

UIImage *image = [UIImage imageNamed:imageName];

// 加入数组

[_imageArr addObject:image];

}

// 开始按钮

UIButton *imgViewButtonStart = [UIButton buttonWithType:UIButtonTypeRoundedRect];

[imgViewButtonStart setFrame:CGRectMake(20, 200, 200, 50)];

[imgViewButtonStart setTitle:@"开始动画" forState:UIControlStateNormal];

[imgViewButtonStart setTitleColor:[UIColor blueColor] forState:UIControlStateNormal];

[imgViewButtonStart addTarget:self action:@selector(stratAction) forControlEvents:UIControlEventTouchUpInside];

[self.view addSubview:imgViewButtonStart];

// 暂停按钮

UIButton *imgViewButtonStop = [UIButton buttonWithType:UIButtonTypeRoundedRect];

[imgViewButtonStop setFrame:CGRectMake(200, 200, 200, 50)];

[imgViewButtonStop setTitle:@"停止动画" forState:UIControlStateNormal];

[imgViewButtonStop setTitleColor:[UIColor blueColor] forState:UIControlStateNormal];

[imgViewButtonStop addTarget:self action:@selector(stopAction) forControlEvents:UIControlEventTouchUpInside];

[self.view addSubview:imgViewButtonStop];

}

#pragma mark - 开始动画

- (void)stratAction {

// 设置动画图片

_imgView.animationImages = _imageArr;

// 设置动画的播放次数

_imgView.animationRepeatCount = 0;

// 设置播放时长

// 1秒30帧, 一张图片的时间 = 1/30 = 0.03333 20 * 0.0333

_imgView.animationDuration = 1.0;

// 开始动画

[_imgView startAnimating];

}

#pragma mark - 结束动画

- (void)stopAction {

[_imgView stopAnimating];

}

@end

UIImageView有关的帧动画的更多相关文章

  1. [Xcode 实际操作]六、媒体与动画-(13)使用UIImageView制作帧动画

    目录:[Swift]Xcode实际操作 本文将演示如何将导入的序列图片,转换为帧动画. 在项目导航区打开资源文件夹[Assets.xcassets] [+]->[Import]->选择图片 ...

  2. 【iOS系列】-UIImageView帧动画相关属性介绍

    UIImageView帧动画相关属性介绍 1:相关属性: //An array of UIImage objects to use for an animation.存放UIImage对象,会按顺序显 ...

  3. UIImageView帧动画相关属性和方法

    @property(nonatomic,copy) NSArray *animationImages; 需要播放的序列帧图片数组(里面都是UIImage对象,会按顺序显示里面的图片) @propert ...

  4. iOS开发之 -- 帧动画的使用

    在项目的开发过程中,我们经常会遇到使用动画的时候,比如我们在请求接口直接开始一个动画,请求结束后结束动画,下面我就给大家展示一个很方便的帧动画的用法: 代码如下: .h #import <Fou ...

  5. ios9--UIImageView的帧动画

    // // ViewController.m // 05-UIImageView的帧动画 // #import "ViewController.h" @interface View ...

  6. 深入理解CSS3 Animation 帧动画

    CSS3我在5年之前就有用了,包括公司项目都一直在很前沿的技术. 最近在写慕课网的七夕主题,用了大量的CSS3动画,但是真的沉淀下来仔细的去深入CSS3动画的各个属性发现还是很深的,这里就写下关于帧动 ...

  7. Android动画效果之Frame Animation(逐帧动画)

    前言: 上一篇介绍了Android的Tween Animation(补间动画) Android动画效果之Tween Animation(补间动画),今天来总结下Android的另外一种动画Frame ...

  8. android 帧动画,补间动画,属性动画的简单总结

      帧动画——FrameAnimation 将一系列图片有序播放,形成动画的效果.其本质是一个Drawable,是一系列图片的集合,本身可以当做一个图片一样使用 在Drawable文件夹下,创建ani ...

  9. android 帧动画

    首先在res/drawable/name1.xml/定义一组图片集合: <?xml version="1.0" encoding="utf-8"?> ...

随机推荐

  1. nginx 80 端口默认被占用

    /etc/nginx/sites-enabled,修改该目录下的default文件, 将默认端口号80改为其他端口号, /etc/nginx/nginx.conf 文件配置里的80端口就会生效

  2. Netcat使用方法

    netcat被誉为网络安全界的‘瑞士军刀',相信没有什么人不认识它吧......   一个简单而有用的工具,透过使用TCP或UDP协议的网络连接去读写数据.它被设计成一个稳定的后门工具,能够直接由其它 ...

  3. js和css兼容问题

    (一)html部分 1.H5新标签在IE9以下的浏览器识别 <!--[if lt IE 9]>  <script type="text/javascript" s ...

  4. onLoad和DomContentLoad的区别

    onLoad是的在页面所有文件加载完成后执行 DomContentLoad是Dom加载完成后执行,不必等待样式脚本和图片加载 domContentLoad更为合理, 原理: 如果是webkit引擎则轮 ...

  5. dat.gui.js

    ].appendChild(b)},inject:function(e,a){a=a||document;].appendChild(b)}}}(); dat.utils.common=functio ...

  6. Java-Java程序设计的基本概念

    2017-10-06 15:31:39 一.Java程序的基本构成             二.数据类型与标识符 数据类型 标识符 广义的用于定义各种对象名称的字符串集合称为标识符,标识符一般分为用户 ...

  7. grub 启动错误 "file not found"

    刚安装ubuntu 14.4 竟然出现这么尴尬的事,ubuntu 行不行? 幸好还是能从u盘启动后,转到硬盘. 然后在网上找到了解决方法. http://askubuntu.com/questions ...

  8. 我为什么放弃使用mybatis3的mapper注解了

    原文链接 最近在使用MyBatis3做项目.在使用注解实现Mapper的时候遇到了比较奇葩的问题:在实现数据的batch insert的时候总是报错.好不容易可以正常插入了,但是又不能返回自增的主键i ...

  9. IDEA设置类、方法注释模板

    类注释模板 File -> Other Setting -> Default Setting打开默认设置 Editor -> File and Code Templates -> ...

  10. centos6.5升级安装openssl1.0.2h

    最新漏洞通报: Openssl多个漏洞安全预警 2016-05-05 18:05:39 一.概述 在OpenSSL官方昨日(2016/5/3)发布的安全公告中,公开了两个新的高危漏洞CVE-2016- ...