• iOS 停止UIView的block动画


    iOS停止UIView的block动画的方法

    动画执行如下:

    UIView.animateWithDuration(animationDuringTime, delay: 0, options: UIViewAnimationOptions.CurveLinear, animations: { [weak self]() -> Void in
                        // do animation
                        animateView?.contentOffset.y = 0
                    }, completion: { [weak self](finished: Bool) -> Void in
                            NSLog("completion")
                    })                    
    

      

    如果在动画过程中突然想停止动画,需要执行如下方法

    // 这里的 animateView 要为 UIView block animation中进行动画效果的view
    animateView.layer.removeAllAnimations()
    

      

    方法执行之后,会UIView block动画会立刻进入completion流程,传入的 finished 值为 false, 可以在代码中通过判断 finished 为 true 或者 false 来区分动画是正常完成还是被停止的。

    UIView.animateWithDuration(animationDuringTime, delay: 0, options: UIViewAnimationOptions.CurveLinear, animations: { [weak self]() -> Void in
                        // do animation
                        animateView?.contentOffset.y = 0
                    }, completion: { [weak self](finished: Bool) -> Void in
                            if !finished{
                                NSLog("animation stop")
                            }else{
                                NSLog("completion")
                            }    
                    })   
    

      

      

      

  • 相关阅读:
    SpringBoot详细研究-01基础
    JDK1.8快速入门
    海外酒店业务学习
    NOSQL快速入门
    移动前端技术快速入门
    Spring快速入门
    Java基础组件快速入门
    JavaWeb快速入门
    TLS 与 python thread local
    python 类修饰器
  • 原文地址:https://www.cnblogs.com/FranZhou/p/5128053.html
Copyright © 2020-2023  润新知