标签:
1. transform属性
在OC中,通过transform属性可以修改对象的平移、缩放比例和旋转角度
常用的创建transform结构体方法分两大类
(1) 创建“基于控件初始位置”的形变
CGAffineTransformMakeTranslation(平移)
CGAffineTransformMakeScale(缩放)
CGAffineTransformMakeRotation(旋转)
(2) 创建“基于transform参数”的形变
CGAffineTransformTranslate
CGAffineTransformScale
CGAffineTransformRotate
补充:
在OC中,所有跟角度相关的数值,都是弧度值,180° = M_PI
正数表示顺时针旋转
负数表示逆时针旋转
提示:由于transform属性可以基于控件的上一次的状态进行叠加形变,例如,先旋转再平移。因此在实际动画开发中,当涉及位置、尺寸形变效果时,大多修改控件的transform属性,而不是frame、bounds、center 。
2.主要代码
//位移(不累加) 234 //self.headImageView.transform=CGAffineTransformMakeTranslation(50, 200); 235 //缩放 236 //self.headImageView.transform=CGAffineTransformMakeScale(1.2, 10); 237 //在原有的基础上位移(是累加的) 238 //self.headImageView.transform=CGAffineTransformTranslate(self.headImageView.transform, 50, 50); 239 //在原有的基础上进行缩放 240 //self.headImageView.transform=CGAffineTransformScale(self.headImageView.transform, 1.5, 1.6); 241 242 //在原有的基础上进行旋转 243 if (rotate.tag) { 244 //旋转角度为1/pi,逆时针 245 self.headImageView.transform=CGAffineTransformRotate(self.headImageView.transform, -M_1_PI); 246 } 247 else 248 { 249 //旋转的角度为pi/2,顺时针 250 self.headImageView.transform=CGAffineTransformRotate(self.headImageView.transform, M_PI_2); 251 }
标签:
原文地址:http://www.cnblogs.com/lege-Fool-Brid/p/4660913.html