我有一个具有panGesture功能的视图,但我需要以编程方式从一个点发送pan-gesture到另一个点。在Swift中是否有一种使用特定时间间隔的动画来实现这一点的方法?以下是我尝试以编程方式调用pan gesture的代码:
var upPanPoint = CGPoint(x: contentView.center.x, y: contentView.center.y + 500)
var upPan = panGestureRecognizer.setTranslation(upPanPoint, inView: self)
onSwipe(upPan)
这是识别平移手势的代码:
func onSwipe(panGestureRecognizer : UIPanGestureRecognizer!) {
let view = panGestureRecognizer.view!
print(view)
switch (panGestureRecognizer.state) {
case UIGestureRecognizerState.Began:
if (panGestureRecognizer.locationInView(view).y < view.center.y) {
self.viewState.rotationDirection = .RotationAwayFromCenter
} else {
self.viewState.rotationDirection = .RotationTowardsCenter
}
case UIGestureRecognizerState.Ended:
self.finalizePosition()
default:
let translation : CGPoint = panGestureRecognizer.translationInView(view)
view.center = self.viewState.originalCenter + translation
self.rotateForTranslation(translation, withRotationDirection: self.viewState.rotationDirection)
self.executeOnPanForTranslation(translation)
}
}
NSView
触摸方法。 - k06aupPan.state
设置为.Changed
(或者一些不同于.Possible
的值),以便你能够识别它。 - Marcus Rossel