从Swift的触摸中返回坐标

时间:2015-01-13 05:21:44

标签: swift touch coordinates

我目前正在Swift中编写PONG游戏。我希望玩家的手柄能够被玩家的手指控制,所以当玩家在屏幕上拖动他们的手指时,球拍就会移动。我希望能够找到玩家手指触摸的坐标,这样我才能实现这一点。通过搜索谷歌和堆栈溢出,我发现了这个功能:

override func touchesBegan(touches: NSSet, withEvent event: UIEvent) {
        let touch = touches.anyObject()! as UITouch
        let location = touch.locationInView(self.view)
    }

虽然我不确定它的作用,它是如何做到的,以及如何从中获取触摸的x和y值。如果有人能告诉我如何获得用户的x / y坐标,我真的很感激!我希望最终结果与此类似:

PlayerPaddle.center.x = XTouchCoordinate

感谢很多!!

2 个答案:

答案 0 :(得分:1)

对于拖动,请使用UIPanGestureRecognizer作为获取x和y坐标的原始问题,您可以使用以下内容:

override func touchesBegan(touches: Set<NSObject>, withEvent event: UIEvent)
{
    let touch = touches.first as! UITouch
    let location = touch.locationInView(self.view)
    var xcoord = location.x
    println(location.y)
}

答案 1 :(得分:0)

 extension TargetViewController: GMSMapViewDelegate {

    func mapView(_ mapView: GMSMapView, didTapAt coordinate: CLLocationCoordinate2D)    
      {

        print("Tapped at Latitude: " + String(coordinate.latitude) + ", Longitude: "
                + String(coordinate.longitude))
      }

    }