I want to implement a ball that is bounding continuously.
If you execute the following code, the ball bounces to a position higher or lower than the position where it started dropping.
Is this an error from the calculation? Or is the implementation wrong?
class ViewController: UIViewController {
@IBOutlet weak var imageView: UIImageView!
var dynamicAnimator: UIDynamicAnimator!
override func viewDidLoad() {
super.viewDidLoad()
}
@IBAction func fallButtonTapped(_ sender: Any) {
let gravityBehavior = UIGravityBehavior(items: [imageView])
dynamicAnimator = UIDynamicAnimator(referenceView: self.view)
dynamicAnimator.addBehavior(gravityBehavior)
let collisionBehavior = UICollisionBehavior(items: [imageView])
collisionBehavior.translatesReferenceBoundsIntoBoundary = true
dynamicAnimator.addBehavior(collisionBehavior)
let dynamicItemBehavior = UIDynamicItemBehavior(items: [imageView])
dynamicItemBehavior.elasticity = 1.0
dynamicItemBehavior.resistance = 0.0
dynamicItemBehavior.friction = 0.0
dynamicAnimator.addBehavior(dynamicItemBehavior)
}
}