iOS动画总结
2016-09-06 12:09
281 查看
就两种,UIView自带动画和核心动画(Core Animation)
一、UIView自带动画(UIKit框架中)
注意:只有当UIView的以下属性改变时才能产生动画效果,且这些动画效果都是平面性的(二维的),基于手机屏幕的平面,主要有“平移(位置改变,沿x轴、Y轴或同时改变)”、“缩放(view大小改变,宽高)”、“旋转(只有沿Z轴,即垂直于屏幕的轴,旋转平行于屏幕)”、“背景色的改变”、“透明度”:
frame (平移
+ 缩放)
bounds (平移
+ 缩放)
center (平移)
transform (变换【平移
+ 缩放 + 旋转】)
alpha (透明度)
backgroundColor (背景色)
contentStretch (6.0之后已经弃用)
重点介绍transform的使用:
eg:view.transform = CGAffineTransformMakeScale(0.5, 0.5);
CGAffineTransform结构体详解 CGAffineTransform.h:
CGAffineTransform CGAffineTransformIdentity 默认值,保持原样不变
CGAffineTransform CGAffineTransformMake(CGFloat a, CGFloat b,CGFloat c, CGFloat d, CGFloat tx, CGFloat ty) 直接变换三维矩阵,很少用吧
创建变换=============
//Translation(平移)创建一个平移变换,起始位置
x 会加上tx , y 会加上 ty
CGAffineTransform CGAffineTransformMakeTranslation(CGFloat tx,CGFloat ty)
//Scale(缩放) 宽度就会变为 width*sx ,对应高度变为 hight * sy
CGAffineTransform CGAffineTransformMakeScale(CGFloat sx, CGFloat sy)
//Rotation(旋转)将一个图片视图旋转了多少度,参数是弧度,先把度转化为弧度
CGAffineTransform CGAffineTransformMakeRotation(CGFloat angle) //90.0*(M_PI/180.0) 顺时针旋转90度,-90.0*(M_PI/180.0)
逆时针旋转90度,view的旋转方向仅以整个圆周最小的弧度,即270不会顺时针转3/4圈,而是逆时针转1/4圈,以180为界,大于等于180了就是逆时针了
增加变换===============
//为一个变换再加上平移变换
CGAffineTransform CGAffineTransformTranslate(CGAffineTransform t,CGFloat tx, CGFloat ty)
一、UIView自带动画(UIKit框架中)
注意:只有当UIView的以下属性改变时才能产生动画效果,且这些动画效果都是平面性的(二维的),基于手机屏幕的平面,主要有“平移(位置改变,沿x轴、Y轴或同时改变)”、“缩放(view大小改变,宽高)”、“旋转(只有沿Z轴,即垂直于屏幕的轴,旋转平行于屏幕)”、“背景色的改变”、“透明度”:
frame (平移
+ 缩放)
bounds (平移
+ 缩放)
center (平移)
transform (变换【平移
+ 缩放 + 旋转】)
alpha (透明度)
backgroundColor (背景色)
contentStretch (6.0之后已经弃用)
重点介绍transform的使用:
eg:view.transform = CGAffineTransformMakeScale(0.5, 0.5);
CGAffineTransform结构体详解 CGAffineTransform.h:
CGAffineTransform CGAffineTransformIdentity 默认值,保持原样不变
CGAffineTransform CGAffineTransformMake(CGFloat a, CGFloat b,CGFloat c, CGFloat d, CGFloat tx, CGFloat ty) 直接变换三维矩阵,很少用吧
创建变换=============
//Translation(平移)创建一个平移变换,起始位置
x 会加上tx , y 会加上 ty
CGAffineTransform CGAffineTransformMakeTranslation(CGFloat tx,CGFloat ty)
//Scale(缩放) 宽度就会变为 width*sx ,对应高度变为 hight * sy
CGAffineTransform CGAffineTransformMakeScale(CGFloat sx, CGFloat sy)
//Rotation(旋转)将一个图片视图旋转了多少度,参数是弧度,先把度转化为弧度
CGAffineTransform CGAffineTransformMakeRotation(CGFloat angle) //90.0*(M_PI/180.0) 顺时针旋转90度,-90.0*(M_PI/180.0)
逆时针旋转90度,view的旋转方向仅以整个圆周最小的弧度,即270不会顺时针转3/4圈,而是逆时针转1/4圈,以180为界,大于等于180了就是逆时针了
增加变换===============
//为一个变换再加上平移变换
CGAffineTransform CGAffineTransformTranslate(CGAffineTransform t,CGFloat tx, CGFloat ty)
相关文章推荐
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 不可修补的 iOS 漏洞可能导致 iPhone 4s 到 iPhone X 永久越狱
- iOS 12.4 系统遭黑客破解,漏洞危及数百万用户
- 每日安全资讯:NSO,一家专业入侵 iPhone 的神秘公司
- [转][源代码]Comex公布JailbreakMe 3.0源代码
- Gifski:一个跨平台的高质量 GIF 编码器
- 模仿动画的放大缩小容器
- jQuery 1.9.1源码分析系列(十五)动画处理之缓动动画核心Tween
- Android实现定制返回按钮动画效果的方法
- Android中ViewFlipper的使用及设置动画效果实例详解
- jQuery实现美观的多级动画效果菜单代码
- php判断GIF图片是否为动画的方法
- jQuery实现动画效果circle实例
- HTML5游戏引擎LTweenLite实现的超帅动画效果(附demo源码下载)
- Vuejs第七篇之Vuejs过渡动画案例全面解析
- 浅析JavaScript动画
- js排序动画模拟-插入排序
- javascript+HTML5的Canvas实现Lab单车动画效果