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) 创建“基于控件初始位置 ...
随机推荐
- SQL Server 数据库设计
一.数据库设计的必要性 在实际的软件项目中,如果系统中需要存储的数据量比较大,需要设计的表比较多,表与表之间的关系比较复杂,那我们就需要进行规范的数据库设置.如果不经过数据库的设计,我们构建的数据库不 ...
- TCP/UDP详解
转载:http://www.cnblogs.com/visily/archive/2013/03/15/2961190.html, 作者:望梅止渴 相关: HTTP协议详解 深入理解HTTP协议 T ...
- linux中的audit审计日志
这里首先介绍auditctl的应用,具体使用指南查看man auditctl.auditctl的man 描述说明这个工具主要是用来控制audit系统行为,获取audit系统状态,添加或者删除audit ...
- NSBundle UIImageView &UIButton
1.NSBundle 1> 一个NSBundle代表一个文件夹,利用NSBundle能访问对应的文件夹 2> 利用mainBundle就可以访问软件资源包中的任何资源 3> 模拟器应 ...
- C#访问配置文件
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.R ...
- jquery.pagination +JSON 动态无刷新分页
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="SqlPage.aspx.cs& ...
- Laravel 安装predis 扩展
在安装predis扩展之前先安装composer,安装教程在https://getcomposer.org/download/: php -r "copy('https://getcompo ...
- 通过HttpClient方式连接网络
xml: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:t ...
- jquery实现radio按纽全不选和checkbox全选的实例
用jquery实现以下两个这个功能: 1.对所有单选按纽中radio全不选 单选按纽:<input type="radio" name="f1">A ...
- js8月-4号,,思想
1.js使用观察者模式,做异步编程.面向事件编程. 2.事件执行 (1)用户触发事件(2)定时执行 作业:选项卡,导航栏.