应用场景
获取动画停止或者结束的标示,并做相应的处理
API 以及语言
CABasicAnimation
swift
关键代码
设置动画对象的代理 CAAnimationDelegate,并实现它的代理方法 func animationDIDStop(_ anim: CAAnimation,finished flag: Bool),核心就是这个方法中的 flag 标示。
flog 标示
当 flog 标示为 true 时,动画完成;
为 false 时,动画被停止,没有完成。
示例代码
class CricleVIEw {
func animation() { //添加动画 let pathAnimation = CABasicAnimation.init(keyPath: "strokeEnd") pathAnimation.duration = 3 //动画持续时间 pathAnimation.timingFunction = camediatimingFunction.init(name: camediatimingFunctionname.eaSEOut) pathAnimation.fromValue = 0 pathAnimation.tovalue = 1 pathAnimation.delegate = self self.cricleLayer.add(pathAnimation,forKey: "strokeEndAnimation")}func stopAnimation() { isCricle = false #warning("停止动画,flog 输入为 false") self.cricleLayer.removeAnimation(forKey: "strokeEndAnimation")}
}
extension CricleVIEw: CAAnimationDelegate {
func animationDIDStart(_ anim: CAAnimation) { print("开始动画")}func animationDIDStop(_ anim: CAAnimation,finished flag: Bool) { #warning("如果不是完成动画,而是被停止动画,则 flag 为 false") if flag { print("动画完成") } else { print("动画被停止") }}
}
总结以上是内存溢出为你收集整理的Swift 动画 - 停止和结束的标示全部内容,希望文章能够帮你解决Swift 动画 - 停止和结束的标示所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)