vicki753's iOS 基础--触摸点击事件
2018-08-30 本文已影响18人
vicki753
1、 重写touch方法
-(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event {
CGPoint touchPoint = [[touches anyObject] locationInView:self]; //找出point 点
if (!CGRectContainsPoint(self.backView.frame, touchPoint)) { // 是否包含这个点
if ([self.delegate respondsToSelector:@selector(clickCustomPickerView:)]) {
[self.delegate clickCustomPickerView:self];
}
}
}
2、重写view的hitTest方法
-(UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event{}
// 同样是否包含什么什么点,不过这个相对复杂点,比较好应用的地方就是点击左边图片可以响应的是右边的按钮,只需要当包含左边图片的时候就return leftButton.这样就会响应leftbutton的target了。或者你干脆如果是(左边图片 || 右边的按钮)这样或运算判断然后直接响应同一个事件,也是可以的。