IIViewDeckController拖动事件与百度地图拖动事件冲突

原创 2015年07月10日 11:21:23
在使用第三方(IIViewDeckController)的侧边栏和百度地图同时使用时。发现百度地图的拖动事件被侧边栏截取了,导致拖动地图时地图移动缓慢,几乎无法滑动。在网上苦苦搜寻了解决方案,最终搜索到比较靠谱的http://www.cocoachina.com/bbs/read.php?tid-252890-page-2.html链接里面11楼的评论。但是我按照他的办法添加代码,在我这边还是没有效果。于是我就在IIViewDeckController第三类里面去找- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch,这个函数。最终在这个协议函数里面添加了几行代码,大概意思就是如果我拖动的是百度地图页面。我就返回NO。如果不是百度地图页面我就返回YES。最终完美解决了百度地图不能华东的bug。如下是源码。
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch {
    if (self.panningGestureDelegate && [self.panningGestureDelegate respondsToSelector:@selector(gestureRecognizer:shouldReceiveTouch:)]) {
        BOOL result = [self.panningGestureDelegate gestureRecognizer:gestureRecognizer
                                                  shouldReceiveTouch:touch];
        if (!result) return result;
    }

    if ([[touch view] isKindOfClass:[UISlider class]])
        return NO;

    _panOrigin = self.slidingControllerView.frame.origin;
	BOOL isMap = NO;
	for (UIView* theview in [touch.view subviews] ) {
		if ([theview isKindOfClass:[BMKPinAnnotationView class]]) {
			isMap=YES;
		}
	}
	if (isMap) {
		return NO;
	}else{
		return YES;
	}
}

相关文章推荐

百度地图API详解之事件机制,function“闭包”解决for循环和监听器冲突的问题:

百度地图API详解之事件机制 2011年07月26日 星期二 下午 04:06 和DOM编程里的事件模型一样,百度地图API也提供了类似的事件机制。本文介绍了事件监听的添加和移...

HTML5:百度地图手机端单触点单击和长按事件,解决部分手机点地图击失效,多触点、拖动依然触发长按的bug

下面是JS文件 [javascript] view plaincopy /**   * Author YX   *    * 对百度地图的...

Android 监听百度地图缩放事件

  • 2016年04月27日 15:19
  • 2KB
  • 下载

百度地图手机端单触点单击和长按事件,解决部分手机(小米手机)地图单击事件失效,多触点、拖动依然触发长按的bug

下面是JS文件 /** * Author 岳晓 * * 对百度地图的事件扩展,目前扩展了fastclick和longclick, * 解决某些设备click不执行的问题 * 解决长按事...

百度地图API自定义覆盖物与添加点击事件

本文适合零基础百度地图API开发者 效果图1 效果图2 直接上代码;另注:code上面很多是钓鱼君自己写的动态的数据,所以不能拿过去马上可以用,本文只提供借鉴,不保证100%原创,但功能是...
  • corey_jk
  • corey_jk
  • 2015年12月21日 15:06
  • 14914

android 百度地图系列之添加覆盖物和覆盖物的点击事件

转自:http://blog.csdn.net/jing__jie/article/details/51800042 之前讲了百度地图定位和地图基本操作,这篇博客讲一下,怎么...

百度地图API详解之事件机制

一次调试百度地图多marker事件监听的问题,不知如何解决,后来看了原作者jz1108才知道要用闭包。觉得原作者jz1108关于百度地图的文章写的不错,所以转载到了CSDN,为了尊重原作者jz1108...

Android之3.5版的百度地图的定位、覆盖物实现以及覆盖物的点击事件

概述前段时间,在用到新版(3.5.0版)百度地图时,在地图覆盖物实现以及覆盖物点击事件的添加部分遇到点挫折,发现网上很多的资料写得都不够详细,所以我就想写一个有关从地图定位到地图覆盖物及其点击事件的实...

百度地图marker标记即行车路线规划和marker点击气泡事件

上一篇,之前的定位什么的就不在说了,我们可以做个简单的demo,点击地图任意位置添加标记marker,并且根据,我们定位的位置为起点stNode,和marker标记即我们点击的位置即enNode,进行...

百度地图中的事件

写这篇文字我想了很久(主要是怕自己能力有限误导大家) 因为本人是一个android才学习不到一个月的菜鸟  --呵呵 其实关于百度地图的介绍  在百度开发者里面都介绍的很详细了(建议大家多看看 多看几...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:IIViewDeckController拖动事件与百度地图拖动事件冲突
举报原因:
原因补充:

(最多只允许输入30个字)