视图在移动时不会发生碰撞 ( Swift iOS )

Views doesn't collides while moving ( Swift iOS )

我正在尝试在我的应用程序中使用一些视图,我正在尝试通过相互碰撞来动画和碰撞这些视图,但问题是当我使用重力时,这些视图会发生碰撞 但是当我 drag/move 时,任何视图冲突都不起作用。我的代码出了什么问题这里是我的代码

移动视图

  func tappedMe(gr: UIPanGestureRecognizer)
    {
        if gr.view?.tag == 1{    
                let point = gr.locationInView(self.view);
                square.center.x=point.x
                square.center.y=point.y
        }else if gr.view?.tag == 2{
            let point = gr.locationInView(self.view);
            square2.center.x=point.x
            square2.center.y=point.y
        }
    }

重力

animator = UIDynamicAnimator(referenceView: view)
    gravity = UIGravityBehavior(items: [square, square2])
            let direction = CGVectorMake(0, -1)
            gravity!.gravityDirection = direction
            animator.addBehavior(gravity)

碰撞

collision = UICollisionBehavior(items: [ square, square2])
            collision.translatesReferenceBoundsIntoBoundary = true
            animator.addBehavior(collision)

提前致谢

我认为您不应该在视图附加到 UIDynamicAnimator 时直接操作视图。我认为您要么需要删除所有行为,要么在触摸点添加附着行为并在平移手势期间移动附着点。

(凭记忆,最近没怎么用过UIDynamics)