我有一个像容器一样使用的简单的UIView。如果我写这段代码:
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event {
UIView *hitView = [super hitTest:point withEvent:event];
NSSet *sTouches = [event touchesForView:self];
NSLog(@"Touches %d", [sTouches count] );
return self;
}不管用!我希望在hitTest()消息中,在touchesBegan()之前获得触摸计数!有可能吗?
我有这样的等级:
UIView
+---> UIScrollView 当触摸我的UIView (单点击)时,容器会移动。当我在UIView上双触摸(两个手指)时,子UIScrollView不适用于Zoom (例如)。所以我想去接电话号码。
如果触摸号等于1,则hitTest在我的UIView容器上返回"self“。否则,如果触摸数为1( == 2),则hitTest返回“滚动视图”指针。
换句话说,我希望将两个手指事件捕获到hitTest()消息/事件中。
发布于 2010-01-13 15:25:28
框架使用touchesBegan/touchesMoved/touchesEnded/touchesCancelled来确定正在命中哪个视图,从而确定要向哪个视图发送hitTest消息。在调用hitTest时,您无法判断。
也许你可以解释一下你想要完成的事情,因为这似乎不是正确的方法。
https://stackoverflow.com/questions/2057478
复制相似问题