Transfrom动画
来源:互联网 发布:淘宝天猫投诉电话人工 编辑:程序博客网 时间:2024/06/05 16:44
本文讲述的是利用CATransfrom实现九宫格的出现动画
首先,定义相关变量,对象
//格子行数和列数 var dimension:Int = 4 //格子间隔 var padding:CGFloat = 20 //格子大小 var width:CGFloat = (UIScreen.main.bounds.size.width - 100)/4 //保存格子 var myViews = Array<UIView>()
设置格子的相关坐标
var x:CGFloat = 20 var y:CGFloat = 50 for _ in 0..<dimension{ for _ in 0..<dimension{ let myView = UIView(frame:CGRect(x: x,y: y,width: width,height: width)) myView.backgroundColor = UIColor.darkGray self.view.addSubview(myView) myViews.append(myView) x += padding + width } x = 20 y += padding + width }
添加Transfrom动画
for myView in myViews{ //将视图缩小为原来的1/10 myView.layer.setAffineTransform(CGAffineTransform(scaleX: 0.1, y: 0.1)) //myView.alpha = 0 UIView.animate(withDuration: 1, delay: 0.01, options: UIViewAnimationOptions(), animations: {() -> Void in //将视图旋转90度 myView.layer.setAffineTransform(CGAffineTransform(rotationAngle: 90)) }, completion: {(finish:Bool) -> Void in UIView.animate(withDuration: 1, animations: {() -> Void in //动画结束后,数据块复原 myView.layer.setAffineTransform(CGAffineTransform.identity) //myView.alpha = 1.0 }) }) }
最后运行结果如下
Demo
!(https://github.com/MrLinTianbao/CATranfrom.git)
阅读全文
0 0
- Transfrom动画
- 动画创建及transfrom属性
- transfrom
- Transfrom
- CSS3动画——transfrom(变形)
- transfrom属性
- C#Transfrom
- C#Transfrom
- C++ transfrom的使用
- 传输反馈 transfrom feedback
- UIView 简介(十四)transfrom属性
- 解决display无法使用transfrom过渡效果
- C++ STL中 std::transfrom()..使用方法.【2013.10.25】
- fourier transfrom 傅立叶变换代码实现(matlab语言)
- ExtendTransform仿NGUI在Transfrom左边添加重置按钮
- 通过transfrom来修改位置.大小(缩放).旋转
- 【Unity3D / Extension】 扩展方法01 —— 扩展Transfrom
- Transfrom在64bit服务下面无法运行
- Android ImageLoader框架下图片缓存的预处理情境
- 【Leetcode】【Python】【C++】1. Two Sum实现
- 数据结构——栈(顺序栈)
- js开发:原生js实现图片延迟加载
- 文件打开和保存对话框
- Transfrom动画
- 为什么要使用Kotlin呢
- Kotlin
- MySQL高可用架构之MHA
- Java 的8种基本类型和3种引用类型
- 拉格朗日乘子法和KKT条件
- echarts 隐藏x轴 y轴 网格线
- 基于kubernetes1.6.0+Zeppelin0.7.1 实战
- 优先队列贪心