UIView可不可以设置相应事件范围。比如一个正方向的view,我想让它左边部分响应事件。右边部分不响应事件,但可以把事件传递给后面的responder去响应。
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event; - (BOOL)pointInside:(CGPoint)point withEvent:(UIEvent *)event;
-(UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event { CGRect rect = CGRectMake(0, 0, self.view.bounds.size.width/2, self.view.bounds.size.height); if (CGRectContainsPoint(rect, point)) return [super hitText:point withEvent:event]; else return nil; }