帧动画的应用------自己在用的时候写了 估计一些刚入门的可能还不会用,就写出来留给大家使用
2016-07-05 14:01
246 查看
#import "ViewController.h"
#define ScreenWidth [[UIScreen mainScreen]bounds].size.width
#define ScreenHeight [[UIScreen mainScreen]bounds].size.height
@interface
ViewController ()
{
UIImageView *_fireImage;
UIButton *_pauseButton;
}
@end
@implementation ViewController
- (void)viewDidLoad {
[super
viewDidLoad];
// 创建火焰背景
_fireImage=[[UIImageView
alloc] initWithFrame:CGRectMake(0,0,320,480)];
_fireImage.image=[UIImage
imageNamed:@"fire.png"];
[self.view
addSubview:_fireImage];
// 创建火焰数组
NSMutableArray *imageArray=[[NSMutableArray
alloc]
init];
//for循环向数组中添加 UIImage类型的对象
for(int i=0;i<2;i++)
{
//获得图片名称
NSString *imageName=[NSString
stringWithFormat:
@"loading%d.png",i];
UIImage *imageFire=[UIImage
imageNamed:imageName];
[imageArray addObject:imageFire];
}
_fireImage.animationDuration=0.5;
_fireImage.animationImages=imageArray;
[_fireImage
startAnimating];
_pauseButton=[UIButton
buttonWithType:UIButtonTypeSystem];
_pauseButton.frame=CGRectMake(20,20,30,20);
[_pauseButton
setTitle:@"暂停"
forState:UIControlStateNormal
];
[_pauseButton
addTarget:self
action:@selector(pauseClick)
forControlEvents:UIControlEventTouchUpInside];
[self.view
addSubview:_pauseButton];
}
- (void)pauseClick
{
NSLog(@"调用了");
//static bool isStop=NO;
//isStop=!isStop;
// isAnimating判断当前是否正在动画
;如果
是,停止动画;否则,开始动画
bool result=[_fireImage
isAnimating];
if(result)
{
//停止动画
;停止的时候,显示的图片是 _fireView最初赋值的图片
//与Timer区别在于,Timer停止时显示最后一张照片,而帧动画停止时显示最初赋值的照片
[_fireImage
stopAnimating];
[_pauseButton
setTitle:@"开始"
forState:UIControlStateNormal];
}
else
{
[_fireImage
startAnimating];
[_pauseButton
setTitle:@"暂停"
forState:UIControlStateNormal];
}
}
#define ScreenWidth [[UIScreen mainScreen]bounds].size.width
#define ScreenHeight [[UIScreen mainScreen]bounds].size.height
@interface
ViewController ()
{
UIImageView *_fireImage;
UIButton *_pauseButton;
}
@end
@implementation ViewController
- (void)viewDidLoad {
[super
viewDidLoad];
// 创建火焰背景
_fireImage=[[UIImageView
alloc] initWithFrame:CGRectMake(0,0,320,480)];
_fireImage.image=[UIImage
imageNamed:@"fire.png"];
[self.view
addSubview:_fireImage];
// 创建火焰数组
NSMutableArray *imageArray=[[NSMutableArray
alloc]
init];
//for循环向数组中添加 UIImage类型的对象
for(int i=0;i<2;i++)
{
//获得图片名称
NSString *imageName=[NSString
stringWithFormat:
@"loading%d.png",i];
UIImage *imageFire=[UIImage
imageNamed:imageName];
[imageArray addObject:imageFire];
}
_fireImage.animationDuration=0.5;
_fireImage.animationImages=imageArray;
[_fireImage
startAnimating];
_pauseButton=[UIButton
buttonWithType:UIButtonTypeSystem];
_pauseButton.frame=CGRectMake(20,20,30,20);
[_pauseButton
setTitle:@"暂停"
forState:UIControlStateNormal
];
[_pauseButton
addTarget:self
action:@selector(pauseClick)
forControlEvents:UIControlEventTouchUpInside];
[self.view
addSubview:_pauseButton];
}
- (void)pauseClick
{
NSLog(@"调用了");
//static bool isStop=NO;
//isStop=!isStop;
// isAnimating判断当前是否正在动画
;如果
是,停止动画;否则,开始动画
bool result=[_fireImage
isAnimating];
if(result)
{
//停止动画
;停止的时候,显示的图片是 _fireView最初赋值的图片
//与Timer区别在于,Timer停止时显示最后一张照片,而帧动画停止时显示最初赋值的照片
[_fireImage
stopAnimating];
[_pauseButton
setTitle:@"开始"
forState:UIControlStateNormal];
}
else
{
[_fireImage
startAnimating];
[_pauseButton
setTitle:@"暂停"
forState:UIControlStateNormal];
}
}
相关文章推荐
- 各大热补丁方案分析和比较
- 绩效考核
- Is there a difference between `==` and `is` in Python?
- CSS基础
- 【shiro】一、基础概念
- 窥探PTAM之Mapping线程
- 前端性能优化:JSON数据的优化
- 一个乐视云,凭什么成为了独角兽?
- Java关于byte[]与double之间的转换
- 命令用法 locate
- jquery中attr和prop的区别
- ecplise-调试source not found一闪而过
- iOS正则表达式的应用
- OpenJDK和SunJDK有啥区别?
- 前端性能优化:数组操作的优化二
- HTML5绘图之Canvas标签 绘制坐标轴
- 关于读取Properties文件以及路径问题
- 前端性能优化:数组操作的优化
- 二分法查找
- 59条令人捧腹但真实的程序员编程语录