程序员人生 网站导航

ios UIWebView singleTap 单击事件的坑

栏目:综合技术时间:2015-01-26 09:07:04

项目需要使用UWebView实现预览ppt,pdf,word,excel的功能,因而选择是用UiWebView来实现,很快实现打开文件的核心功能,记在窃喜时候,单击和滑动隐藏navigationbar,遇到了问题,开始是单击事件,没法捕获,后来是单击事件捕获后,长按事件又丢失,各种google,github寻觅解决方案,各种答案各种坑。最后硬是自己给实验出来了正确的解决方法;

贴出方法做个记录:

//singleTap webView UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(changDisplayTopBarAndBottomBar)]; singleTap.delegate = self; [self.webview addGestureRecognizer:singleTap];
 vc里边实现UIGestureRecognizerDelegate协议后,正常添加单击事件,只是这样做 UIWebView 单击事件其实不能捕获,最重要的是下面这个delegate方法

-(BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer{ return YES; }


字面翻译就是『是不是同时辨认其他的手势』,UIGestureRecognizerDelegate还有其他的几个代码事件,看方法名可以大致猜出来是响应失败的处理,都是写Yes or NO的选择,切记不可贪杯,只实现这1个方法便可,他们之间有冲突关系。这也是坑所在

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐