我正在使用UIKit动态创建下落的对象,我想知道我是否真的可以放慢重力以使球在命令下放慢。例如,物体将掉落,我按下一个按钮,然后球掉落的速度变慢。我将如何去做?这是我的代码(请注意,我在上面添加了squareView,但由于它与问题无关,所以未包含它)

var squareView: UIImageView!
var gravity: UIGravityBehavior!
var animator: UIDynamicAnimator!
var collision: UICollisionBehavior!
func viewDidLoad() {
    super.viewDidLoad()

    animator = UIDynamicAnimator(referenceView: view)
    gravity = UIGravityBehavior(items: [squareView])
    gravity.gravityDirection = CGVector(dx: 0.0, dy: 1.1)
    animator.addBehavior(gravity)
}


我尝试编写gravity.gravityDirection = CGVector(dx:0.0,dy:0.5),但是它只是将对象疯狂地甩到屏幕上,所以我不知道该怎么办。

最佳答案

您可以更改重力行为的magnitude。 (或者,可以通过使用resistance为其提供UIDynamicItemBehavior来更改下落的对象的拖动,但我没有尝试过,所以不确定。)

关于swift - UIKit动态降低重力,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29552398/

10-10 22:38