如何在Cocoa/Objective-C中获取触摸位置?

5

我想获取触摸的位置,最好是对应于屏幕上的像素。我刚接触objective-c和cocoa,没有在网上找到相关信息,所以不确定是否有方法可以实现。如果您有任何想法或者方向,请告诉我,谢谢。

1个回答

8

在 iPhone 上,您需要创建一个 UIView 的子类,并实现函数 -(void)touchesBegan:(NSSet *)touches withEvent:(NSEvent *)anEvent:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
   UITouch *myTouch = [[touches allObjects] objectAtIndex: 0];
   CGPoint currentPos = [myTouch locationInView: self];
   NSLog(@"Point in myView: (%f,%f)", currentPos.x, currentPos.y);
}

很棒,但你能解释一下如何创建UIView的子视图以及我应该在项目文件中的哪个位置放置代码吗? - Joe
我非常确定他的意思是在UIView的子类中创建一个子类。 - David Liu
1
把它放在你的viewcontroller.m文件中。 - Kurbz
抱歉,昨晚有点累了。当然,我是指 UIView 的子类,而不是子视图。谢谢指出来... - jollyCocoa

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接