我在self.view上有一个UIView添加子视图。
我希望UIPanGestureRecognizer在右/左/上/下是UIView移动和缩放跟随触摸。
当UIView宽度/高度小于0.5宽度/高度self.view是UIView将解雇。
请建议帮帮我?
答案 0 :(得分:1)
让我们说你有vc - ViewController,你的UIView A是vc的子视图。您可以将UIPanGestureRecognizer添加到A.然后将panGestureRegonizer拖动到您的vc作为操作:
@IBAction func panGestureAction(_ sender: UIPanGestureRecognizer) {
UIView.animateKeyframes(withDuration: 0.1, delay: 0, options: UIViewKeyframeAnimationOptions.calculationModeLinear, animations: {
let location = sender.location(in: sender.view?.superview)
sender.view?.center = location
})
}
这里sender.view?.superview等于vc.view。此代码段将检测平移手势,然后将移动A以使A.center与手势的位置匹配。请注意,持续时间0.1为运动提供了平滑的动画效果。