ios - 在 Swift 的手势识别器中获取触摸窗口坐标?

标签 ios swift uigesturerecognizer

我使用 UIPanGestureRecognizer 将 CALayer 从一个 UIView 拖到另一个。在 UIGestureRecognizerState.Changed 方法中,我调用移动 CALayer

var touchLocation = recognizer.locationInView(recognizer.view)
self.panForTranslation(touchLocation)

但是 touchLocation 返回的是 CALayers 相对于它的框架的位置,而不是屏幕坐标。

如何获取手指在屏幕上的确切点的 UITouch 位置?

最佳答案

试试这个:

var touchLocation = recognizer.locationInView(recognizer.view.window)
self.panForTranslation(touchLocation)

关于ios - 在 Swift 的手势识别器中获取触摸窗口坐标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30657832/

相关文章:

android - 如何仅在 Flutter 的 datepicker 中显示年份?

iphone - 从另一个窗口中打开已经创建的窗口

swift - 自动完成搜索栏 - 不是值单元格

ios - 为什么将 UILabel 设置为完全透明会丢失点击手势?

iphone - 手势识别器和按钮操作

ios - 使用 Swift 在 iOS 中将项目添加到数组

ios - iOS 中 UITableViewCell 中的 setHighlighted 和 setSelected 有什么区别?

ios - 将 fetchedResultsController 与 swift3 一起使用

ios - Alamofire 后台获取不处理更多请求

ios - UIMenuController 在 UILongGestureRecognizer 上不可见