我有找到了解决这个问题的办法。基本上我需要重写方法
-(BOOL)pointInside:(CGPoint)point withEvent:(UIEvent *)event
其中
“返回一个布尔值指示所述接收器是否包含指定点”。
首先我用超级视图测试点。如果它没有返回,我将测试在父对象边界外绘制的对象。
-(BOOL)pointInside:(CGPoint)point withEvent:(UIEvent *)event
{
if ([super pointInside:point withEvent:event])
{
return YES;
}
else
{
id elem;
NSEnumerator * enumerator = [tracks objectEnumerator];
while(elem = [enumerator nextObject])
{
LKTrack *track = (LKTrack*) elem;
if ([track pointInside:[self convertPoint:point toView:track] withEvent:event])
{
return YES;
}
}
}
return NO;
}
这不是一个答案。你应该删除它并在相关答案下发表评论。 – Logan 2014-05-15 05:16:22