【发布时间】:2012-03-20 00:49:28
【问题描述】:
我正在创建一个自定义 UIView 并在其上添加一个 UITapGestureRecognizer。我有一个用于点击手势的处理程序。但同时我希望我的 UIView 能够监听 touchesBegan 和 touchesEnded 方法。我也实现了 gestureRecognizer:shouldReceiveTouch: 方法,但 touchesBegan/touchesEnded 方法没有被调用。有什么线索吗?
在我的自定义 UIView 中
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)iGestureRecognizer shouldReceiveTouch:(UITouch *)iTouch {
return YES;
}
在我的视图控制器中
MyCustomView aCustomView = [[[MyCustomView alloc] init] autorelease];
UIGestureRecognizer *myGestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleGesture:)];
[aCustomView addGestureRecognizer:myGestureRecognizer];
[myGestureRecognizer release];
【问题讨论】:
-
我一直以为touchesBegan只适用于主viewController的view。
标签: iphone objective-c ios cocoa-touch uigesturerecognizer