IOS Animation-CAKeyframeAnimation例子(简单动画实现)
在阅读本文之前,可以看看 CABasicAnimation的例子
也可以看看IOS Animation-CABasicAnimation、CAKeyframeAnimation详解&区别&联系
1)让一个layer左右晃动
//让一个layer左右晃动
func addLayerKeyframeAnimationRock(layer:CALayer) {
let animation = CAKeyframeAnimation(keyPath: "position.x")
animation.values = [, , -, ]
//additive设置为true是使Core Animation 在更新 presentation layer 之前将动画的值添加到 model layer 中去。可以看到上面的values是0,10,-10,0. 没有设置的话values=layer.position.x+0, layer.position.x+10, layer.position.x-10
animation.additive = true
animation.duration = 0.3
animation.repeatCount = layer.addAnimation(animation, forKey: "addLayerKeyframeAnimationRock")
}
2)让一个layer圆周(圆圈)运动
//让一个layer圆周(圆圈)运动
func addLayerKeyframeAnimationOrbit(layer:CALayer) {
let animation = CAKeyframeAnimation(keyPath: "position")
let boundingRect = CGRectMake(layer.frame.origin.x, layer.frame.origin.y, , )
animation.path = CGPathCreateWithEllipseInRect(boundingRect,nil)
animation.duration =
animation.repeatCount = HUGE
//其值为kCAAnimationPaced,保证动画向被驱动的对象施加一个恒定速度,不管路径的各个线段有多长,并且无视我们已经设置的keyTimes
animation.calculationMode = kCAAnimationPaced
//kCAAnimationRotateAuto,确定其沿着路径旋转(具体要自己来体验,这里难解释)
animation.rotationMode = kCAAnimationRotateAuto layer.addAnimation(animation, forKey: "addLayerKeyframeAnimationOrbit")
}
可以关注本人的公众号,多年经验的原创文章共享给大家。

IOS Animation-CAKeyframeAnimation例子(简单动画实现)的更多相关文章
- [iOS Animation]-CALayer 隐式动画
隐式动画 按照我的意思去做,而不是我说的. -- 埃德娜,辛普森 我们在第一部分讨论了Core Animation除了动画之外可以做到的任何事情.但是动画是Core Animation库一个非常显著的 ...
- iOS Animation 主流炫酷动画框架(特效)收集整理 #91
https://github.com/sxyx2008/DevArticles/issues/91
- IOS Animation-CABasicAnimation例子(简单动画实现)
这些例子都是CABasicAnimation的一些简单实现的动画,例如移动.透明度.翻转等等.方法里面传入一个CALayer类或者子类就可以了. 下面是用swift实现的,这些方法我们也可以用作公共类 ...
- [iOS Animation]-CALayer 显示动画
显式动画 如果想让事情变得顺利,只有靠自己 -- 夏尔·纪尧姆 上一章介绍了隐式动画的概念.隐式动画是在iOS平台创建动态用户界面的一种直接方式,也是UIKit动画机制的基础,不过它并不能涵盖所有的动 ...
- iOS CAReplicatorLayer 简单动画
代码地址如下:http://www.demodashi.com/demo/11601.html 写在最前面,最近在看学习的时候,偶然间发现一个没有用过的Layer,于是抽空研究了下,本来应该能提前记录 ...
- Swift 实现iOS Animation动画教程
这是一篇翻译文章.原文出处:http://www.raywenderlich.com/95910/uiview-animation-swift-tutorial 动画( animation)是iOS用 ...
- iOS Core Animation学习总结(3)--动画的基本类型
一. CABasicAnimation (基础动画) 移位: CABasicAnimation *animation = [CABasicAnimation animation]; //keyPath ...
- ios animation 动画效果实现
1.过渡动画 CATransition CATransition *animation = [CATransition animation]; [animation setDuration:1.0]; ...
- iOS简单动画效果:闪烁、移动、旋转、路径、组合
#define kDegreesToRadian(x) (M_PI * (x) / 180.0) #define kRadianToDegrees(radian) (radian*180.0)/(M_ ...
随机推荐
- 史上最强大网盘,网络上的赚钱神器【Yunfile网盘】,注册就送8元
YunFile.com,是提供在线存储和文件保存服务最大的网站之一,从2007年创立至今,我们提供免费的和您可以承受的收费服务.这些服务包括高级在线存储/远程备份服务,和先进的上传和下载工具.上百万来 ...
- iOS开发中的各种错误
提交iTunesconnect遇到的问题: 1. error itms-90179 Invalid Code Signing. 解决:发现是发布正式被撤销了,重新生成发布Certificates,重新 ...
- JS-字符串操作-替换
<!DOCTYPE HTML><html><head><meta http-equiv="Content-Type" content=&q ...
- React jQuery公用组件开发模式及实现
目前较为流行的react确实有很多优点,例如虚拟dom,单向数据流状态机的思想.还有可复用组件化的思想等等.加上搭配jsx语法和es6,适应之后开发确实快捷很多,值得大家去一试.其实组件化的思想一直在 ...
- 在 Mac OS X 上创建的 .NET 命令行程序访问数据库 (使用Entity Framework 7 )
var appInsights=window.appInsights||function(config){ function r(config){t[config]=function(){var i= ...
- 搜索引擎 ElasticSearch 之 步步为营1 【环境搭建&初识ElasticSearch】
1.下载ElasticSearch a.下载Java环境JDK:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloa ...
- linux系统安装软件方法大全
1.源代码包的安装gzip -d apache_1.3.20.tar.gz (解压)tar xvf apache_1.3.20.tar (解包)cd apache_1.3.20 ./configure ...
- IOS和Android支持的音频编解码
1.IOS编码 参考文档地址:https://developer.apple.com/library/ios/documentation/AudioVideo/Conceptual/Multimedi ...
- Linux Ubuntu12.04下安装OpenCv2.4.10
参考 http://blog.sina.com.cn/s/blog_53b0956801010lfu.html 捣鼓了一个晚上了,OpenCv还没装好,本来以为看个类似的比如Ubuntu安装OpenC ...
- 选择排序-java
排序-选择排序 基本思想:在待排序子表中找出最大(小)元素, 并将该元素放在子表的最前(后)面. 平均时间:O(n2) 最好情况:O(n2) 最坏情况:O(n2) 辅助空间:O(1) 稳定性:不稳定 ...