五 iOS之 Core Animation(核心动画)
核心动画继承结构
开发步骤
1.首先得有CALayer
2.初始化一个CAAnimation对象,并设置一些动画相关属性
3.通过调用CALayer的addAnimation:forKey:方法,增加CAAnimation对象到CALayer中,这样就能开始执行动画了
4.通过调用CALayer的removeAnimationForKey:方法可以停止CALayer中的动画
CAAnimation 简介
是所有动画对象的父类,负责控制动画的持续时间和速度,是个抽象类,不能直接使用,应该使用它具体的子类
属性说明:(加粗字体代表来自
CAMediaTiming
协议的属性)duration:动画的持续时间
repeatCount:重复次数,无限循环可以设置HUGE_VALF或者MAXFLOAT
repeatDuration:重复时间
removedOnCompletion:默认为YES,代表动画执行完毕后就从图层上移除,图形会恢复到动画执行前的状态。如果想让图层保持显示动画执行后的状态,那就设置为NO,不过还要设置
fillMode为kCAFillModeForwardsfillMode:决定当前对象在非active时间段的行为。比如动画开始之前或者动画结束之后
beginTime:可以用来设置动画延迟执行时间,若想延迟2s,就设置为CACurrentMediaTime()+2,CACurrentMediaTime()为图层的当前时间
timingFunction:速度控制函数,控制动画运行的节奏
delegate:动画代理
CAPropertyAnimation
- 是CAAnimation的子类,也是个抽象类,要想创建动画对象,应该使用它的两个子类:
- CABasicAnimation
- CAKeyframeAnimation
五 iOS之 Core Animation(核心动画)相关推荐
- iOS开发 - Core Animation 核心动画
Core Animation Core Animation,中文翻译为核心动画,它是一组非常强大的动画处理API,使用它能做出非常炫丽的动画效果,而且往往是事半功倍.也就是说,使用少量的代码就可以实现 ...
- iOS - Core Animation 核心动画
1.UIView 动画 具体讲解见 iOS - UIView 动画 2.UIImageView 动画 具体讲解见 iOS - UIImageView 动画 3.CADisplayLink 定时器 具体 ...
- Core Animation(核心动画)
iOS开发UI篇-核心动画简介 一.简单介绍 Core Animation,中文翻译为核心动画,它是一组非常强大的动画处理API,使用它能做出非常炫丽的动画效果,而且往往是事半功倍.也就是说,使用少量 ...
- iOS - Core Animation 核心动画的使用
1.简单使用示例 1.1 时钟 QClockView.h @interface QClockView : UIView/// 创建时钟界面+ (instancetype)q_clockViewWith ...
- Core Animation核心动画的使用
什么是核心动画 核心动画就是CoreAnimation直译过来的中文,它是一组非常强大的动画处理API,只需要使用少量代码就能实现炫酷的动画效果. 核心动画的好处 核心动画可以跨平台使用,Mac OS ...
- ios开发——使用CALayer和Core Animation做动画效果
一. CALayer (一). CALayer简介 在iOS中,你能看得见摸得着的东西基本上都是UIView,比如一个按钮.一个文本标签.一个文本输入框.一个图标等等,这些都是UIView,其实UIV ...
- iOS开发UI篇—核心动画简介
一.简单介绍 Core Animation,中文翻译为核心动画,它是一组非常强大的动画处理API,使用它能做出非常炫丽的动画效果,而且往往是事半功倍.也就是说,使用少量的代码就可以实现非常强大的功能. ...
- iOS开发:Core Animation编程指南
关于Core Animation Core Animation是iOS与OS X平台上负责图形渲染与动画的基础设施.Core Animation可以动画视图和其他的可视元素.Core Animatio ...
- iOS-Core Animation 核心动画
Core AnimationCore Animation,中文翻译为核心动画,它是一组非常强大的动画处理API,使用它能做出非常炫丽的动画效果,而且往往是事半功倍.也就是说,使用少量的代码就可以实现非 ...
最新文章
- VMware Tools按钮变灰色,无法安装的解决方法
- PHP几种常见魔术方法与魔术变量解析
- 使用mpvue和wepy开发小程序
- 这么说吧,Netty很简单,其实就是个Jar包,是作为通讯组件用的
- install yael on the ubuntu 12.04
- axios 同时多个请求_Axios是什么?用在什么场景?如何使用?
- RANSAC算法详解
- 【小憩】流光容易把人抛,红了樱桃,绿了芭蕉
- 基于java宿舍管理系统的开题报告_基于Java的学生宿舍管理系统开题报告
- GIF动态图片分解,多帧动态图分解成多张静态图片
- ICLR 2021 | 自解释神经网络—Shapley Explanation Networks
- Apache 报错指定的网络名不再可用解决方案
- matlab设计高频滤波器
- 气血瘀滞热入血室闭经案
- Kubernates(k8s)工作负载之工作负载资源
- html表格第一列和最后一列冻结
- Spark的搭建及实现单词统计
- Phoenix二级索引那些事儿(下)
- java好学么_java是什么好学吗
- 【互联网人的英语】背景知识对于理解文章究竟有多重要?
热门文章
- Office365——Office客户端
- 广告深度学习计算:多媒体AI推理服务加速利器high_service
- php7.4自定义扩展的编写Windows篇
- 如何策划一场网红的直播形式方案
- Windows系统日志
- 两塑胶柱脚光纤端子_插销两个塑胶柱光纤端子_无塑胶柱光纤端子_无锁螺丝头光纤端子_塑胶双柱脚光纤端子_两塑胶柱无锁螺丝孔光纤端子
- 春节临近 青海彩民喜获双色球万元大礼包
- 同一个地方安卓有信号苹果无服务器,为什么iphone手机信号两格,安卓却满格?看完你就明白了!...
- 系统内的在线协同富文本,如何寻求解决方案?
- 僵尸网络启示录:一个病毒的自白(3)