-(UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event(实现不规则点击,事件分发)
2016-11-28 11:06
483 查看
-(UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event
在有全屏侧滑的情况下,页面上有个slider需要左右滑动的时候,经常在滑动slider的时候页面也跟着滑动
解决办法一:关闭当前页面的全屏侧滑,开启系统侧滑
解决办法二:if (点击事件在slider上) {
关掉全屏侧滑;
} else {
开启全屏侧滑;
}
View上
ViewController上
在有全屏侧滑的情况下,页面上有个slider需要左右滑动的时候,经常在滑动slider的时候页面也跟着滑动
解决办法一:关闭当前页面的全屏侧滑,开启系统侧滑
self.fd_interactivePopDisabled = YES; //关闭全屏侧滑 self.navigationController.interactivePopGestureRecognizer.enabled = YES; //开启系统侧滑
解决办法二:if (点击事件在slider上) {
关掉全屏侧滑;
} else {
开启全屏侧滑;
}
View上
-(UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event { UIView *hitView = [super hitTest:point withEvent:event]; if (hitView == _mySlider) { _sliderBlock11(YES); return hitView; } else { _sliderBlock11(NO); return nil; } }
ViewController上
__weak ViewController *weakSelf = self; sliderV.sliderBlock11 = ^ (BOOL aaa){ weakSelf.fd_interactivePopDisabled = aaa; };
相关文章推荐
- - (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event
- -(UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event
- XMG 重写- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event方法
- 点击事件处理, 以及hitTest:withEvent:实现
- - (nullable UIView *)hitTest:(CGPoint)point withEvent:(nullable UIEvent *)event
- hitTest:(CGPoint)point withEvent:(UIEvent *)event
- hitTest:withEvent 此方法可实现点击穿透、点击下层视图功能。
- 深入理解iOS API系列(三)UiView事件传递相关函数:pointInside:withEvent:和hittest:withevent:
- hitTest:withEvent:和pointInside:withEvent:
- 浅谈Android事件分发机制(一)点击事件的传递规则
- 自定义控件实现不规则区域点击事件
- hitTest:方法练习 - 不规则区域点击事件处理
- UiView事件传递相关函数:pointInside:withEvent:
- 实现鼠标鼠标点击之后随鼠标移动_event事件详解
- pointInside 和 hitTest (超出父视图点击事件不响应解决办法)
- iOS 中 点击事件响应的方法hitTest与pointInside
- [寒江孤叶丶的Cocos2d-x之旅_23]Cocos2d-x LUA实现事件分发器 lua EventDispatcher
- iOS UIView事件隔层传递 pointInside:withEvent:
- iOS-hitTest:withEvent与自定义hit-testing规则
- hitTest和pointInside如何响应用户点击事件