transform属性
transform属性
在OC中,通过transform属性可以修改对象的平移、缩放比例和旋转角度常用的创建transform结构体方法分两大类
(1) 创建“基于控件初始位置”的形变
CGAffineTransformMakeTranslation(平移)
CGAffineTransformMakeScale(缩放)
CGAffineTransformMakeRotation(旋转)
(2) 创建“基于transform参数”的形变
CGAffineTransformTranslate
CGAffineTransformScale
CGAffineTransformRotate
(3)CGAffineTransformIdentity
//属性能还原到 进行动画 之前的状态
self.transform = CGAffineTransformIdentity;
变形种类和CGAffine Transform 函数对照表
旋转 正数和负数 分别代表顺时针和逆时针
self.transform = CGAffineTransformRotate(self.transform, 180*(M_PI/180.0)); //此方法是在旋转后的基础上在继续旋转 能一老旋转
self.transform = CGAffineTransformMakeRotation(180*(M_PI/180.0)); // 单纯基于原始状态旋转 只能旋转一次
扩大/缩小
self.transform = CGAffineTransformScale(self.transform, 2.0, 2.0); //此方法是在缩放后的基础上在继续缩放 能一老缩放
self.transform = CGAffineTransformMakeScale(2.0, 2.0); //单纯基于原始的状态缩放,只能缩放一次
左右反转
self.transform = CGAffineTransformScale(self.transform, -1,1.0);
注:如果把后面的参数写成(self.transform, -2,2.0) 效果是反转的同事放大
self.transform = CGAffineTransformMakeScale(-1, 1.0); //效果是 只反转一次
上下反转 左右反转的效果同样适用于上下反转
self.transform = CGAffineTransformScale(self.transform, 1,-1.0);
self.transform = CGAffineTransformMakeScale(1, -1.0);
平行移动 左负右正 上负下正 效果解释同旋转
self.transform = CGAffineTransformMakeTranslation(25.0, -25.0);
self.transform = CGAffineTransformTranslate(self.transform, 25.0, -25.0);
两个变形的复合
transform属性的更多相关文章
- 图层的transform属性
Main.storyboard // // ViewController.m // 7A11.图层的transform属性 // // Created by huan on 16/2/4. // ...
- 通过transform属性改变图片的位置大小等信息
对UIImageView的位置大小方向的改变可以通过改变其transform属性值实现. 位置改变: var transform = CGAffineTransformMakeTranslation( ...
- 2016 - 1- 14 UI阶段学习补充 transform属性详解
UIView的transform属性 transform是view的一个重要属性,它在矩阵层面上改变view的显⽰状态,能实现view的缩放.旋转.平移等功能.transform是CGAffineTr ...
- 理解SVG坐标系统和变换: transform属性
SVG元素可以通过缩放,移动,倾斜和旋转来变换-类似HTML元素使用CSS transform来变换.然而,当涉及到坐标系时这些变换所产生的影响必然有一定差别.在这篇文章中我们讨论SVG的transf ...
- Swift - 通过设置视图的transform属性实现动画
设置视图对象的transform属性,可以实现各种动画效果. 1,移动 指在同一平面内,将控件按照某个直线方向平移一定的距离. 1 2 3 4 5 //每次都从当前位置平移 self.imageVie ...
- 11--tag 和transform属性
tag 和transform属性 1.tag 标签,就相当于身份识别的标码,可以通过tag值获取对应的对象. 2.使用transform 实现对象的平移和旋转. // // ViewControlle ...
- IOS(二)基本控件UIButton、简易动画、transform属性、UIImageView
UIButton //1.设置UIButton 的左右移动 .center属性 获得 CGPoint 来修改x y //1.设置UIButton 的放大缩小 bounds属性 获得CGRect 然后通 ...
- animation,transform属性
animation属性 使用@keyfarmes属性开启动画步骤 结构体:@keyfarmes name{ from{ } to{ } } @keyfarmes name{ 0%{ } 50%{ } ...
- iOS transform属性的使用
1.transform属性 在iOS开发中,通过transform属性可以修改UIView对象的平移.缩放比例和旋转角度,常用的创建transform结构体方法分两大类 (1) 创建“基于控件初始位置 ...
随机推荐
- 对应键盘的ASCII码(备忘)
vbKeyLButton 1 鼠标左键 vbKeyRButton 2 鼠标右键 vbKeyCancel 3 CANCEL 键 vbKeyMButton 4 鼠标中键 vbKeyBack 8 Backs ...
- C# 打印异常
1. [代码]函数:将异常打印到LOG文件 跳至 [1] [2] [4] [全屏预览] ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ...
- Oracle笔记 七、PL/SQL 异常处理
--异常处理 declare sNum number := 0; begin sNum := 5 / sNum; dbms_output.put_line(sNum); exception when ...
- linux ---用uniq实现文件的并集和交集
1. 取出两个文件的并集(重复的行只保留一份) 2. 取出两个文件的交集(只留下同时存在于两个文件中的文件) 3. 删除交集,留下其他的行 1. cat file1 file2 | sort | un ...
- leetcode 9
判断一个数是否为回文数,不利用额外的空间. 思路:将数反转后进行比较. 注意:反转之后数越界的判断,若越界,则不是回文数:负数不是回文数: 代码如下: class Solution { public: ...
- Velocity原理
1.准备 添加引用:velocity-1.7.jar,velocity-tools-2.0.jar,commons-beanutils-1.7.0.jar,commons-chain-1.1.jar, ...
- 完成了server和client的框架设计
界面暂且也不搞.先把框架搭建起来.
- ADO.NET中的DataReader详解
使用特性 原理图 PS:Read()使指针下移,同时销毁上一条.所以SqlDataReader是只进的. GetValue()是找当前行中的列 SqlDataReader()特性. 1)只进的 上面 ...
- bootstrap中弹出窗体dialog的自定义
感谢nakupanda的https://github.com/nakupanda/bootstrap3-dialog 根据需要弹出窗体,但是可以移动,不遮挡下面的内容,所以就修改了源代码,添加了一个属 ...
- 在peopletools里面测试文件上传
Using the PeopleTools Test Utilities Page Select selectPeopleTools, then selectUtilities, then selec ...