#import "UIViewAnimationController.h"
@interface UIViewAnimationController (){
UIView *animationView;
}
@end
@implementation UIViewAnimationController
- (void)viewDidLoad {
[super viewDidLoad];
self.view.backgroundColor = [UIColor orangeColor]; //设置背景色
//创建animationView
animationView =[[UIView alloc]initWithFrame:CGRectMake(100, 500, 100, 100)];
animationView.backgroundColor = [UIColor colorWithRed:0.5 green:0.8 blue:0.4 alpha:1.0];
UIImage *image = [UIImage imageNamed:@"心纽扣.jpg"];
UIImageView *imageView = [[UIImageView alloc]initWithImage:image];
imageView.frame = animationView.bounds; // 将animation.brunds代替frame 防止视图旋转时找不到frame
[animationView addSubview:imageView];
[self.view addSubview:animationView5];
[animationView5 release];
//添加一个手势 控制 图片的大小
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(start)];
[self.view addGestureRecognizer:tap];
[tap release];
//tap触发的方法
-(void)start{
NSLog(@"开始");
// [self propertyAnimation1];
//定时器代替上面的调用 实现触发一次 就能一直执行
[NSTimer scheduledTimerWithTimeInterval:0.5 target:self selector:@selector(propertyAnimation1) userInfo:nil repeats:YES];
}
属性动画 方法
-(void)propertyAnimation1{
[UIView beginAnimations:@"图片" context:NULL];
animationView5.transform = CGAffineTransformScale(animationView5.transform, 2, 2);//图片扩大
animationView5.transform = CGAffineTransformScale(animationView5.transform, 0.5, 0.5);//图片缩小
[UIView commitAnimations];
}
}
书写步骤:1. 先创建UIView *animationView (设置 大小 背景色添加到视图 释放 );
2.设置一个手势 以及触发方法
3.属性动画方法 (动画开始begin 和 动画结束commit之间 设置属性 如 动画时长 旋转角度 移动距离 )(两种方法 一种点语法 animation.tranform 另一种是块语法)
注意:图片加到视图上的位置(frame 或 bounds)