CALayer 实现的动画效果(一)】的更多相关文章

先看下效果图: (备注: 上面GIF 是Mac 下录制视频的并转化成gif 的而成,工具为GIF Brewery 3 [这款软件挺不错的]) 那么主题来了如何实现上面效果呢? 1.创建自定义CALayer子类 KBSpinnyMcSpinface 构造函数如下: -(instancetype)initWithNumberOfItems:(NSUInteger)number { if (self = [self init]) { self.masksToBounds = NO; self.fram…
一.CALayer简介 1.CALayer在iOS中,文本输入框.一个图标等等,这些都是UIView你能看得见摸得着的东西基本上都是UIView,比如一个按钮.一个文本标签.一个其实UIView之所以能显示在屏幕上,完全是因为它内部的一个图层 在创建UIView对象时,UIView内部会自动创建一个图层(即CALayer对象),通过UIView的layer属性可以访问这个层 @property(nonatomic,readonly,retain) CALayer *layer; 当UIView需…
前面介绍了Core Animation基础知识,还有CALayer的简单使用,最终还是有要动画的滴,这里列出几个动画效果,参考下能加深对Core Animation的认识和理解 1.把图片移到右下角变小透明 使用CAAnimationGroup叠加动画效果,就是下面按钮<把图片移到右下角变小透明>描述的效果:      . 上面三个图是动画的三个状态,实现代码如下: - (void)viewDidLoad { [super viewDidLoad]; self.imageView = [[UI…
隐式动画 按照我的意思去做,而不是我说的. -- 埃德娜,辛普森 我们在第一部分讨论了Core Animation除了动画之外可以做到的任何事情.但是动画是Core Animation库一个非常显著的特性.这一章我们来看看它是怎么做到的.具体来说,我们先来讨论框架自动完成的隐式动画(除非你明确禁用了这个功能). 事务 Core Animation基于一个假设,说屏幕上的任何东西都可以(或者可能)做动画.动画并不需要你在Core Animation中手动打开,相反需要明确地关闭,否则他会一直存在.…
iOS CAReplicatorLayer 实现脉冲动画效果 效果图 脉冲数量.速度.半径.透明度.渐变颜色.方向等都可以设置.可以用于地图标注(Annotation).按钮长按动画效果(例如录音按钮)等. 代码已上传 GitHub:https://github.com/Silence-GitHub/CoreAnimationDemo 实现原理 实现方法参考:https://github.com/shu223/Pulsator 但是觉得那些代码不够简洁,所以自己写了一个,还加了些功能. 自定义…
本文转载至 http://www.cocoachina.com/ios/20151223/14739.html 感谢原创作者分享 前言相信很多人对实现 iOS 中的动画效果都特别头疼,往往懒得动手,功能实现不就得了,何必要那么花哨.装13的东西.但是看到别人的炫酷动效,心中又瘙痒不已,便下定决心学习,于是开始翻看 Core Animation.UIView动画(其实是对Core Animation的一种封装)相关资料.不小心看到一群大神正在热烈讨论,钻一进去一看,原来是 POP(潜意识:Face…
UITableView中cell点击的绚丽动画效果 本人视频教程系类   iOS中CALayer的使用 效果图: 源码: YouXianMingCell.h 与 YouXianMingCell.m // // YouXianMingCell.h // CellAnimation // // Created by YouXianMing on 14/12/27. // Copyright (c) 2014年 YouXianMing. All rights reserved. // #import…
coreAnimation的动画是存在于CALayer上面的,有些时候需要突然暂停某个组件的动画效果,同时保留当前动画的状态, 如果是用removeAnimation会显得很突兀,不够平滑,所以可以利用设置动画速度和设置一个时间偏移量来暂停动画: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 //用来暂停layer上的动画  -(void)pauseLayer:(CALayer*)layer  {      CFTimeInterval pausedTime…
在App设计中为了加强用户体验,我们会常常加入一些友好的动画效果.比如类似UIAlertView弹出的动画效果,由于系统中并没有直接提供类似的动画API,如果我们想要做出一样的效果,那就得深入的研究一下系统中的UIAlertView了.仔细观察UIAlertView的动画你就会发现:这个动画是由几部分组成,它带一个视图大小抖动的效果.先是由小变大,再由大变小,最后变成本来的大小.但是这个大小的具体参数值和动画的速度恐怕是肉眼所不能看出来的.本篇文章会使用一些objc runtime和CAAnim…
在cell中 // 播放器动画效果 private var replicatorLayer:ReplicatorLayer = { let layer = ReplicatorLayer.init(frame: CGRect(x: 0, y: 0, width: 2, height: 15)) return layer }() func setUpUI(){ self.replicatorLayer.snp.makeConstraints { (make) in make.left.equalT…