是否可以从 [UIPanGestureRecognizer translationInView] 获取绝对触摸坐标?我正在开发 iPad 应用程序,并且一直在搜索大量内容以从 UIPanGestureRecognizer 获取触摸坐标值!
我也尝试过使用我们从 transaltionInView 获得的值进行偏移,但我真的无法理解它背后的数学原理......
有什么建议吗?
拉维
最佳答案
translationInView
是手势的增量变化。如果您将手指向左移动 20 pt,您将得到 (-20.0, 0.0)
,在这个意义上它已经是“绝对”了。
您的意思可能是您想要 locationInView
,它与通过参数传递的 View 相关,即使所述 View 不是识别事件的 View 。通常,您会提交 View Controller 的 View ,或将处理事件的 View ,或对您的实现更有意义的 subview 。
此外,请记住,如果您需要真正的绝对值,您可以通过参数传递 nil
,它会返回相对于窗口的值(也称为“绝对值”)
而且,如果您需要对其他 View 进行逻辑处理,您可以使用 UIView
实例方法将坐标从一个 View 转换为另一个 View :convertRect:fromView:
, convertRect:toView:
, convertPoint:fromView:
, convertPoint:toView:
。这些方法还接受 nil
作为 View 参数,表示对窗口“绝对”。
关于ios - 来自 UIPanGestureRecognizer 的触摸坐标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7196558/