swift中实现cell中局部播放的动画效果
在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.equalToSuperview().offset(10)
make.bottom.equalToSuperview().offset(-10)
make.width.equalTo(20)
make.height.equalTo(10)
}
}
左下方

import UIKit
class ReplicatorLayer: UIView {
override init(frame: CGRect) {
super.init(frame: frame)
createLayer()
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
}
func createLayer(){
let layer = CALayer.init()
layer.frame = self.bounds
layer.backgroundColor = UIColor.white.cgColor
layer.anchorPoint = CGPoint.init(x: 0.5, y: 0.5)
layer.add(self.scaleYAnimation(), forKey: "scaleAnimation")
let replicatorLayer = CAReplicatorLayer.init()
replicatorLayer.frame = self.bounds
//设置复制层里面包含子层的个数
replicatorLayer.instanceCount = 4
//设置子层相对于前一个层的偏移量
replicatorLayer.instanceTransform = CATransform3DMakeTranslation(5, 0, 0)
//设置子层相对于前一个层的延迟时间
replicatorLayer.instanceDelay = 0.2
//设置层的颜色,(前提是要设置层的背景颜色,如果没有设置背景颜色,默认是透明的,再设置这个属性不会有效果。
replicatorLayer.instanceColor = DominantColor.cgColor
//需要把子层加入到复制层中,复制层按照前面设置的参数自动复制
replicatorLayer.addSublayer(layer)
//将复制层加入view的层里面进行显示
self.layer.addSublayer(replicatorLayer)
}
}
extension ReplicatorLayer {
fileprivate func scaleYAnimation() -> CABasicAnimation{
let anim = CABasicAnimation.init(keyPath: "transform.scale.y")
anim.toValue = 0.1
anim.duration = 0.4
anim.autoreverses = true
anim.repeatCount = MAXFLOAT
anim.isRemovedOnCompletion = false
return anim
}
}
swift中实现cell中局部播放的动画效果的更多相关文章
- UITableView中cell点击的绚丽动画效果
UITableView中cell点击的绚丽动画效果 本人视频教程系类 iOS中CALayer的使用 效果图: 源码: YouXianMingCell.h 与 YouXianMingCell.m / ...
- vue中使用第三方插件animate.css实现动画效果
vue中使用第三方插件animate.css实现动画效果1.首先先引入第三方类animated.css2.将你所需要动画的标签用包裹起来3.在transition元素中添加enter-active-c ...
- iOS中获取cell中webview的内容尺寸
最近项目中遇到在cell中获取webView的内容的尺寸的需求 实现的思路其实很简单 就是通过执行js 获取尺寸即可 为了后面用着方便我直接封装了一个HTML的cell 起名就叫 STHTMLBase ...
- CSS3中的动画效果记录
今天要记录的是CSS3中的三种属性transform.transition以及animation,这三个属性大大提升了css处理动画的能力. 一.Transform 变形 CSS中transform ...
- [MISSAJJ原创] UITableViewCell移动及翻转出现的3D动画效果[58同城cell移动效果]
2015-11-20 很喜欢在安静的状态, 听着音乐,敲着键盘, 和代码们浓情对话, 每一份代码的积累, 都让自己觉得很充实快乐!Y(^_^)Y. 看到58同城app的cell有动画移动出现的特效,很 ...
- [Swift通天遁地]五、高级扩展-(11)图像加载Loading动画效果的自定义和缓存
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...
- [Swift通天遁地]八、媒体与动画-(10)在项目中播放GIF动画
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...
- iOS 在cell中使用倒计时的处理方法(新)
一.前言 之前的文章iOS 在cell中使用倒计时的处理方法得到大量的支持, 在这先感谢大家的支持. 但是也收到不少人的回复表示不会用, 需要一一解答, 由于之前写的时候没有使用Markdown编辑, ...
- ASP.NET中使用UpdatePanel实现局部异步刷新方法和攻略(转)
asp.net UpdatePanel实现异步局部刷新 如有雷同,不胜荣欣,若转载,请注明 鉴于最近项目需要,研究了一下UpdatePanel控件的使用方法,现总结如下,可能有很多地方不足,还望大家斧 ...
随机推荐
- 02.python实现排序算法
一.列表排序 将无序列表变为有序列表 应用场景: 榜单,表格, 给二分查找用,给其他算法用 二.python实现三种简单排序算法 时间复杂度O(n^2), 空间O(1) 1.冒泡排序 思路: 列表每两 ...
- CF755G PolandBall and Many Other Balls 题解
从神 Karry 的题单过来的,然后自己瞎 yy 了一个方法,看题解区里没有,便来写一个题解 一个常数和复杂度都很大的题解 令 \(dp_{i,j}\) 为 在 \(i\) 个球中选 \(j\) 组的 ...
- springboot常见注解 2020-01-19
1,@SpringBootApplication 是springboot的核心注解,用在启动类上,是由 @Configuration 加载spring,配置spring并启动spring容器; 启动容 ...
- 智能充电安全管理首选SOC单芯片方案:SI24R2F
SI24R2F简介: SI24R2F是一颗工作在2.45GHZ ISM 频段,专为低功耗有源RFID应用场合设计,集成崁入式2.45GHZ 无线射频发射器模块.64次可编程NVM存储器模块 ...
- Python--unique()与nunique()函数
参考:https://www.cnblogs.com/xxswkl/p/11009059.html 1 unique() 统计list中的不同值时,返回的是array.它有三个参数,可分别统计不同的量 ...
- ionic实现滑动的三种方式
在移动端受屏幕大小所限,展示内容很多的时候,就要使部分区域进行滑动.本文展示项目中所有到的几种方式,大家可以看自己的需求选择合适的滑动方式.实现滑动的基本原理,有两个容器A.B,假如A在外层,B在内层 ...
- JS取整方法
1.toFixed方法 定义:toFixed() 方法可把 Number 四舍五入为指定小数位数的数字. 例如:将数据Num保留2位小数,则表示为:toFixed(Num):但是其四舍五入的规则与数学 ...
- 8 Jvm堆分析
备注:直接内存分配,无法触发GC动作 备注:with outgoing reference (当前选中对象引用的对象),with incoming references(引用当前对象的对象)
- tornado peewee_async
https://peewee-async.readthedocs.io/en/latest/peewee_async/examples.html https://www.cnblogs.com/Vic ...
- EditText标签的使用
前文: 介绍EditText的使用,这个是文本输入控件,用来输入文本内容 使用: EditText继承TextView所以TextView的东西EditText都可以使用 text:显示文本 text ...