#import "ViewController.h"
@interface ViewController ()
@property (weak, nonatomic) IBOutlet UIButton *iconView;
- (IBAction)bottom;
- (IBAction)big;
- (IBAction)small;
- (IBAction)rotateIcon;
@property (nonatomic,assign) int count;
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
self.count=0;
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (IBAction)bottom {
//self.count+=100;
//使用frame|center来实现也可以
//使用transform的CGAffineTransformMakeTranslation实现移动:
//1.在原来的基础之上偏移你所指定的坐标值
//2.它只是相对于最原始的坐标进行偏移操作的。
//self.iconView.transform=CGAffineTransformMakeTranslation(0, 100);
//使用transform的CGAffineTransformTranslation实现移动:
//1.能够在指定的<#CGAffineTransform t#>基础上进行偏移,而不仅仅只参数控件 的最原始的坐标点
//2.能够待续的移动
self.iconView.transform=CGAffineTransformTranslate(self.iconView.transform, 0, 20);
}
//放大 如果值>1,放大操作
- (IBAction)big {
self.iconView.transform=CGAffineTransformScale(self.iconView.transform, 1.1, 1.1);
}
//缩小 <1就是缩小
- (IBAction)small {
self.iconView.transform=CGAffineTransformScale(self.iconView.transform, 0.9, 0.9);
}
//旋转
- (IBAction)rotateIcon {
//添加动画
//1.开启一个动画
// [UIView beginAnimations:nil context:nil];
// //2.设置动画时间,以秒做为单位
// [UIView setAnimationDuration:4];
// self.iconView.transform=CGAffineTransformRotate(self.iconView.transform, M_PI_2);
//第二种添加动画的方式
// [UIView animateWithDuration:1 animations:^{
// self.iconView.transform=CGAffineTransformRotate(self.iconView.transform, M_PI_2);
// }];
//一个动画结束之后执行另外一个操作
[UIView animateWithDuration:0.02 animations:^{
//设置动画的匀速播放
[UIView setAnimationCurve:UIViewAnimationCurveLinear];
self.iconView.transform=CGAffineTransformRotate(self.iconView.transform, M_PI_2);
} completion:^(BOOL finished) {
[self rotateIcon];
}];
}
@end