【发布时间】:2014-04-09 15:05:30
【问题描述】:
我搜索了其他几个问题和教程,但找不到我的问题的答案。我想检测用户是否触摸/点击/按住/单击了屏幕。我尝试使用touchesBegan: withEvent:,但它没有触发任何事件。
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [touches anyObject];
if ([touch view] == mapView_) {
NSLog(@"Touches began");
} else NSLog(@"Touches began");
}
还有其他方法可以通过触摸屏幕来检测用户交互吗?
【问题讨论】:
-
这取决于您要达到的目标。您可以使用 UIButton 或其他类型的控件、视图上的手势识别器、touchesBegan:... 和朋友... 这一切都取决于,真的。
-
touchesBegan应该可以工作,你能举个例子吗? -
@Douglas 问题已编辑。
-
@WWJD 你在哪个类中添加了这个方法?那个类真的被使用了吗?
-
touchesBegan:withEvent:方法是在 UIResponder 类上定义的。当你想自己处理touchesBegan:withEvent:时,你可以创建一个从UIViewController继承的新类(它又从UIResponder继承),然后将touchesBegan:withEvent:添加到新类中。
标签: ios cocoa-touch