1

对于客户,我需要意识到UIView应该类似于这个:

成为屏幕

我的想法是使用UIDynamics和某种UIFieldBehaviour. 所以我创建了一个容器视图containerView,添加了一堆UIViews。这些内部视图被添加到一个UIFieldBehavior.magneticField()(使用 addItem)。

我还创建了一个UICollisionBehaviour添加相同UIView的 s

下面是代码:

let  _animator = UIDynamicAnimator.init(referenceView: self.pointsReceivedMap)
let _magnet = UIFieldBehavior.magneticField()
let _collisions = UICollisionBehaviour()
_collisions.translatesReferenceBoundsIntoBoundary = true

for index in 1..<10 {
    let view = UIView();
    /*add some UI style to view */
    _collision.addItem(view)
    _magnet.addItem(view)
}

_animator.addBehaviour(_magnet)
_animator.addBehaviour(_collision)

这就是我得到的:

我得到了什么

黄色视图是在referenceView初始化动画对象时传递的容器视图 ( self.pointsReceivedMap)

4

0 回答 0