1 #import "ViewController.h"
2 @interface ViewController ()
3 @end
4 @implementation ViewController
5
6 - (void)viewDidLoad {
7 [super viewDidLoad];
8
9 UIButton* btn = [[UIButton alloc]initWithFrame:CGRectMake(100, 100, 30, 30)];
10 btn.backgroundColor = [UIColor redColor];
11 [btn addTarget:self action:@selector(dian:) forControlEvents:UIControlEventTouchUpInside];
12 [self.view addSubview:btn];
13 }
14
15 - (void)dian:(UIButton*)sender{
16
17 // transform 形变属性
18 // transformMake 基于原始属性的基础进行变化
19 // transform 在已经变化的基础上进行变化
20
21 // 旋转(旋转角度:pai)
22 // (tx:在x轴移动的距离,ty:在y轴移动的距离)
23 // +M_PI_2 顺时针旋转,-M_PI_2 逆时针旋转
24 弧度、角度:3.14 180 角度=弧度*180 / 3.14 弧度 = 角度*3.14 / 180
25 // 基于原始属性变化 angle 角度
26 sender.transform = CGAffineTransformMakeRotation(M_PI_2);
27 // 在变化的基础上旋转
28 sender.transform = CGAffineTransformRotate(sender.transform,M_PI_2);
29
30 // 在x轴上移动的距离
31 sender.transform = CGAffineTransformMakeTranslation(100, 0);
32 sender.transform = CGAffineTransformTranslate(sender.transform, 100, 0);
33
34 // 在y轴上移动的距离
35 sender.transform = CGAffineTransformMakeTranslation(0, 100);
36 sender.transform = CGAffineTransformTranslate(sender.transform, 0, 100);
37
38 // 在x轴y轴同时移动
39 sender.transform = CGAffineTransformMakeTranslation(10, 10);
40 sender.transform = CGAffineTransformTranslate(sender.transform, 10, 10);
41
42 // 放大 ,x轴y轴同时放大(x或y轴单独放大同上移动一样)
43 // 小于1是缩小,大于1是放大(放大1.5倍)
44 sender.transform = CGAffineTransformMakeScale(1.5, 1.5);
45 // 连续放大(缩小同理)
46 sender.transform = CGAffineTransformScale(sender.transform, 1.5, 1.5);
47
48 // 清空形变属性 Identity 仿射变幻(在原有的基础上变化,移动,旋转,缩放)
49 sender.transform = CGAffineTransformIdentity;
50 }