搜索

首页  >  问答  >  正文

objective-c - 关于iOS中的动画效果

原文地址:http://www.raywenderlich.com/76147/uikit-dynamics-tutorial-swift
在原文的最下面有这样一段代码,实现的大概效果是:当手指触摸屏幕某一点时,view就移动到那一点,我不是很清楚其中这段if语句,if语句的意思应该是把snap行为移除,可是这有什么作用,为什么把if语句删掉了就不能达到上面的效果

override func touchesEnded(touches: Set<UITouch>, withEvent event: UIEvent?) {

        if (snap != nil) {
            animator.removeBehavior(snap)
        }
        
        let touch = touches.first! as UITouch
        snap = UISnapBehavior(item: square, snapToPoint: touch.locationInView(view))
        animator.addBehavior(snap)
    }
巴扎黑巴扎黑2770 天前289

全部回复(1)我来回复

  • 怪我咯

    怪我咯2017-04-17 17:29:12

    那是用来屏蔽还没完成的触摸点或者事件完成后没有rease,响应你最后的点击事件。

    回复
    0
  • 取消回复