德语学习网站iOStransform的简单使⽤⼀、 transform 属性
在OC中,通过 transform 属性可以修改对象的平移、缩放⽐例和旋转⾓度。
1)创建“基于控件初始位置”的形变
CGAffineTransformMakeRotation ——旋转
CGAffineTransformMakeTranslation ——平移
CGAffineTransformMakeScale ——缩放
2)创建“基于transform参数”的形变
CGAffineTransformTranslate
CGAffineTransformScale
CGAffineTransformRotate
补充:在OC中,所有跟⾓度相关的数值,都为弧度制 180度 = M_PI , 45度 = M_PI_4 。
正数表⽰顺时针旋转,负数表⽰逆时针旋转。doggy bag
“基于 transform 参数”的形变可以基于控件上⼀次的状态进⾏叠加形变,如先旋转再平移。
⼆、⽰例
business letter
⽤代码在 viewDidLoad 中添加控制旋转的按钮:
1//向左旋转按钮
高考状元的学习方法2 UIButton *leftrotatebtn = [UIButton buttonWithType:UIButtonTypeCustom];
3 leftrotatebtn.frame = CGRectMake(125, 450, 80, 40);
melon是什么意思
4 [leftrotatebtn tTitle:@"向左旋转" forState:UIControlStateNormal];
5 [leftrotatebtn tTitleColor:[UIColor blueColor] forState:UIControlStateNormal];
kayaking
6 [leftrotatebtn tTag:1];
7 [lf.view addSubview:leftrotatebtn];
8//添加按钮的单击事件
9 [leftrotatebtn addTarget:lf action:@lector(rotate:) forControlEvents:UIControlEventTouchUpInside];
10
11//向右旋转按钮
asdas12 UIButton *rightrotatebtn = [UIButton buttonWithType:UIButtonTypeCustom];
13 rightrotatebtn.frame = CGRectMake(125, 500, 80, 40);
14 [rightrotatebtn tTitle:@"向右旋转" forState:UIControlStateNormal];
15 [rightrotatebtn tTitleColor:[UIColor blueColor] forState:UIControlStateNormal];
16 [rightrotatebtn tTag:0];
17 [lf.view addSubview:rightrotatebtn];
18//添加按钮的单击事件
alongside
19 [rightrotatebtn addTarget:lf action:@lector(rotate:) forControlEvents:UIControlEventTouchUpInside];
viewDidLoad 是视图加载完成后调⽤的⽅法,通常在此⽅法中执⾏视图控制器的初始化⼯作。
添加旋转按钮响应事件:
1 - (void)rotate:(id)nder{
energy star2 UIButton *button = (UIButton *)nder;
3if (button.tag) {
4//ansform = CGAffineTransformMakeRotation(-M_PI_4);
afw5//逆时针旋转
6 ansform = CGAffineTransformRotate(ansform, -M_1_PI);
7 } el {
8//顺时针旋转
9 ansform = CGAffineTransformRotate(ansform, M_PI_4);
10 }
11 }