Transform属性
在OC中,通过 transform 属性可以修改对象的平移、缩放比例和旋转角度。
1)创建“基于控件初始位置”的形变
CGAffineTransformMakeRotation ——旋转
CGAffineTransformMakeTranslation ——平移
CGAffineTransformMakeScale ——缩放
2)创建“基于 transform 参数”的形变
CGAffineTransformTranslate
CGAffineTransformScale
CGAffineTransformRotate
补充:在OC中,所有跟角度相关的数值,都为弧度制 180度 = M_PI , 45度 = M_PI_4 。
正数表示顺时针旋转,负数表示逆时针旋转。
“基于 transform 参数”的形变可以基于控件上一次的状态进行叠加形变,如先旋转再平移。
一些简单代码
- 平移
CGAffineTransformMakeTranslation(100, 100) 1次
CGAffineTransformTranslate(self.redView.transform, 50, 0) 多次 - 缩放
CGAffineTransformMakeScale(2, 1) 1次
CGAffineTransformScale(self.redView.transform,0.01,1) 多次 - 旋转
CGAffineTransformMakeRotation(M_PI_2) 1次
CGAffineTransformRotate(self.redView.transform, M_PI_2) 多次 - 弹簧效果
[U