问题: 有没有办法在其 subview 中直接接收来自父 View 的触摸(即触摸 subview 边界之外的触摸)? p>
我想避免委托(delegate)(正式/非正式)、NSNotification、代理或任何其他将触摸事件从一个 View 转发到另一个 View 的中间解决方案。
Best Answer-推荐答案 strong>
这样就可以了。覆盖 subview 中的 pointInside 。希望能直接满足您的要求。
- (BOOL)pointInsideCGPoint)point withEventUIEvent *)event
{
point = [self convertPoint:point toCoordinateSpace:self.superview];
CGRect frame = self.superview.frame;
if (CGRectContainsPoint(frame, point)) {
return YES;
}
return [super pointInside:point withEvent:event];
}
关于iOS 在其 subview 中接收 super View 的触摸事件,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/27923171/
|