Swift 动画学习笔记
视频地址: http://www.swiftv.cn/course/i275v5lz
1,动画属性
position(位置),opacity(透明度,0 全透明,1 不透明),Scale(尺寸),Color,Rotate,3D
2,动画曲线
Linear(线性),EaseIn(慢开始),EaseOut(慢结束),EaseInEaseOut
3,CoreAnimation
1)创建球
let redBall = UIView(frame:CGRectMale(50,50,100,100))
redBall.backgroundColor = UIColor.redColor()
redBall.layer.cornerRadius = 50 //半圆
self.view.addSubView(redBall)
2)放大动画
UIView.animateWithDuration(0.5,delay:0,options:UIViewAnimationOptions.CurveEaseInOut,
animations:{()->void in
redBall.transform = CGAffineTransformMakeScale(2,2) //圆放大
},completion:nil)
3)组合动画和位移动画
UIView.animateWithDuration(0.5,delay:0,options:UIViewAnimationOptions.CurveEaseInOut,
animations:{()->void in
//redBall.transform = CGAffineTransformMakeScale(2,2)
redBall.transform = CGAffineTransformConcat(
CGAffineTransformMakeScale(2.0,2.0),
CGAffineTransformMakeTranslation(150,50));
redBall.backgroundColor = UIColor.greenColor()
},completion:nil)
4)弹性动画(加两个参数) spring Animation
UIView.animateWithDuration(
3,
delay:0,
usingSpringWithDamping:0.3, //阻力值
initialSpringVelocity:0, //弹性运动初始速度
options:UIViewAnimationOptions.allZeros,
animations:{()->void in
redBall.transform = CGAffineTransformMakeTranslation(200,0)
},
completion:nil)
4, JNWSpringAnimation
1) CAKeyframeAnimation 关键帧动画
多个关键帧组成动画
可以设置时间间隔
设置位移,缩放等动画属性
2)JNW支持的属性
.position,rotation,scale,corner,shadow,bounds等
3)导入JNW框架
a)获取JNW框架
https://github.com/jwilling/JNWSpringAnimation
b) 拖入项目中,修改版本差异
new group- 文件拖入-创建桥接头文件-加入#import"JNWSpringAnimation.h"
在NSValue+。。。中引入#import<UIKit/UIKit.h>
c)缩放动画
//创建JNW实例
let scale = JNWSpringAnimation(keyPath:"transform.scale")
//阻力
scale.damping = 6
***********************
IOS动画类型
IOS 上的动画实现有三种方式:
1,UIView动画
2,CATransition动画 。主要用于两个视图切换过渡的动画效果
3,CAAnimation动画.IOS核心动画,结合绘图可以实现灵活多变的动画效果
Swift 动画学习笔记的更多相关文章
- Android动画学习笔记-Android Animation
Android动画学习笔记-Android Animation 3.0以前,android支持两种动画模式,tween animation,frame animation,在android3.0中 ...
- Unity Shader序列帧动画学习笔记
Unity Shader序列帧动画学习笔记 关于无限播放序列帧动画的一点问题 在学shader的序列帧动画时,书上写了这样一段代码: fixed4 frag(v2f i){ // 获得整数时间 flo ...
- 《从零开始学Swift》学习笔记(Day 29)——访问级别
Swift 2.0学习笔记(Day 29)——访问级别 原创文章,欢迎转载.转载请注明:关东升的博客 访问级别: Swift提供了3种不同访问级别,对应的访问修饰符为:public.internal和 ...
- 《从零开始学Swift》学习笔记(Day 13)——数据类型之整型和浮点型
Swift 2.0学习笔记(Day 13)——数据类型之整型和浮点型 原创文章,欢迎转载.转载请注明:关东升的博客 Swift提供8.16.32.64位形式的有符号及无符号整数.这些整数类型遵循 ...
- 《从零开始学Swift》学习笔记(Day5)——我所知道的标识符和关键字
Swift 2.0学习笔记(Day5)——我所知道的标识符和关键字 原创文章,欢迎转载.转载请注明:关东升的博客 好多计算机语言都有标识符和关键字,一直没有好好的总结,就是这样的用着,现在小小的整 ...
- 《从零开始学Swift》学习笔记(Day4)——用Playground工具编写Swift
Swift 2.0学习笔记(Day4)——用Playground工具编写Swift 原创文章,欢迎转载.转载请注明:关东升的博客 用Playground编写Swift代码目的是为了学习.测试算法.验证 ...
- 《从零开始学Swift》学习笔记(Day 3)——Swift 2.0之后增加的关键字
Swift 2.0学习笔记(Day 3)——Swift 2.0之后增加的关键字 原创文章,欢迎转载.转载请注明:关东升的博客 看了之前的学习笔记知道了什么是关键字,现在提示各位在Swift 2.0之后 ...
- 《从零开始学Swift》学习笔记(Day2)——使用Web网站编写Swift代码
Swift 2.0学习笔记——使用Web网站编写Swift代码 原创文章,欢迎转载.转载请注明:关东升的博客 Swift程序不能在Windows其他平台编译和运行,有人提供了一个网站swiftstub ...
- 《从零开始学Swift》学习笔记http(Day1)——我的第一行Swift代码
Swift 2.0学习笔记(Day1)——我的第一行Swift代码 原创文章,欢迎转载.转载请注明:关东升的博客 当第一次看到下面代码时我石化了,这些代码是什么东东?单词拼出来的? import Fo ...
随机推荐
- mysql水平拆分与垂直拆分的详细介绍(转载http://www.cnblogs.com/nixi8/p/4524082.html)
垂直 垂直拆分是指数据表列的拆分,把一张列比较多的表拆分为多张表 通常我们按以下原则进行垂直拆分: 把不常用的字段单独放在一张表; 把text,blob等大字段拆分出来放在附表中; 经常组合查询的 ...
- android EditText长按屏蔽ActionMode context菜单但保留选择工具功能
最近项目要求屏蔽EditText 长按出来的ActionMode菜单,但是要保留选择文本功能.这个屏蔽百度会出现各种方法,这里说一下我的思路: 1.屏蔽百度可知setCustomSelectionAc ...
- paper 77:[转载]ENDNOTE使用方法,常用!
一.简介 EndNote是一款用于海量文献管理和批量参考文献管理的工具软件,自问世起就成为科研界的必备武器.在前EndNote时代,文献复习阶段从各大数据库中搜集到的文献往往千头万绪.或重复或遗漏, ...
- 夺命雷公狗ThinkPHP项目之----企业网站26之网站前台列表页的显示和完成分页功能
我们用大I接收到我们get过来的栏目页的id然后通过文章的ar_cateid 来判断是不是属于该栏目下的,如果文章表ar_cateid = 栏目表的cate_id 那么就可以选出我们要查找的信息, 然 ...
- Verilog篇(二)系统函数
显示任务:$display,$write, 前者总会输出一个换行符,后者不会.固定输出格式版:$displayb/$displayo/$displayh/$writeb/$writeo/$writeh ...
- 仅支持webkit浏览器的多行内容超出显示省略号
.box { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; ...
- JavaSPI机制学习笔记
最近在阅读框架源代码时,常常看到 SPI 的子包, 忍不住查了下: Service Provider Interface : 服务提供接口. JavaSPI 实际上是“基于接口的编程+策略模式+配置文 ...
- linux设备驱动归纳总结(八):2.总线、设备和驱动的关系【转】
本文转载自:http://blog.chinaunix.net/uid-25014876-id-110295.html linux设备驱动归纳总结(八):2.总线.设备和驱动的关系 xxxxxxxxx ...
- 进度条,随机数---demo笔记【原创】
本人学习笔记,参考网上代码完成 makefile TEST_OBJ := rng_app MAKEOPT := ARCH=arm CROSS_COMPILE=arm-none-linux-gnueab ...
- 【jQuery UI 1.8 The User Interface Library for jQuery】.学习笔记.8.Datepicker控件
默认datepicker的安装启用 探索它的配置选项 安装启用一个触发按钮 配置一个供选择的动画 dateFormat选项 简单的国际化 多月datepicker 日期范围选择 datepicker的 ...