Ios UIPangestureRecognitor:第一次接触发生在哪里?
许多教程存储第一次触摸的坐标,如下所示:Ios UIPangestureRecognitor:第一次接触发生在哪里?,ios,uipangesturerecognizer,Ios,Uipangesturerecognizer,许多教程存储第一次触摸的坐标,如下所示: func panHandler(_ sender: UIPanGestureRecognizer) { if sender.state == .began { originalCenter = self.center } } 有没有办法确切地知道触摸发生在哪个位置,即在superview的坐标系中?试试这个 let gestureView = sender.view let translation
func panHandler(_ sender: UIPanGestureRecognizer) {
if sender.state == .began
{
originalCenter = self.center
}
}
有没有办法确切地知道触摸发生在哪个位置,即在superview的坐标系中?试试这个
let gestureView = sender.view
let translation: CGPoint = sender.translation(in: gestureView)
var initialCenter = gesture.location(in: sender.view
)
if sender.state == .began {
print("begin")
}
let point = CGPoint(x: CGFloat((initialCenter?.x)! + translation.x), y: CGFloat((initialCenter?.y)! + translation.y))
print(point)
试试这个:
func panHandler(_ sender: UIPanGestureRecognizer) {
if sender.state == .began
{
print("locationOfBeganTap -> (.\(touch.locationInView(view).x - touch.translationInView(view).x), .\(touch.locationInView(view).y - touch.translationInView(view).y))")
}
}
是的,我们可以通过接触协议获得接触点。例如:
originalCenter=sender.location(在:self.superview中)
?