屏幕触摸坐标不起作用

Coordinates of screen touch aren't working

所以我正在尝试获取屏幕触摸的坐标。这是我正在使用的代码:

UITouch *touched = [[event allTouches] anyObject];
location = [Touch locationInView:touched.view];
NSLog(@"x=%.2f y=%.2f", location.x, location.y);

我只需要测试 Y 坐标,所以我在屏幕上打印出 Y 坐标以查看它保存为 location.y 的内容,现在它保存为 0.000000

我如何让它正常工作而不是将 0 保存为 location.y

这取决于您的视图层次结构。

我假设你的意思是

location = [touched locationInView:touched.view];

而不是

location = [Touch locationInView:touched.view];

如果你想要控制器视图中的位置,你应该使用

[touched locationInView:self.view];

您的 touch.view 可以引用您的视图层次结构的子视图,其中坐标可以是 0、0。

编辑:问题似乎只与 Touch 有关,而不是 touched