iphone响应地图长按事件 解决长按响应两次的问题
2012-02-15 15:55
387 查看
很简单的,直接贴代码!!
长按手势的响应有状态之分,action在 长按手势的 began和ended状态都会被调用一次。把这两个状态区分开就可以。
- (void)viewDidLoad { [super viewDidLoad]; [self addUserLongPressAction]; // Do any additional setup after loading the view from its nib. } -(void)addUserLongPressAction { UILongPressGestureRecognizer *longPress = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(addAnnotationForMap:)]; [longPress setMinimumPressDuration:0.8]; [myMapView addGestureRecognizer:longPress]; [longPress release]; } - (void) addAnnotationForMap:(UILongPressGestureRecognizer*)press { //解决响应两次的问题 if (press.state == UIGestureRecognizerStateEnded) { return; } else if (press.state == UIGestureRecognizerStateBegan) { CGPoint point = [press locationInView:self.view]; CLLocationCoordinate2D coo = [myMapView convertPoint:point toCoordinateFromView:myMapView]; NSLog(@"经纬度:%lf, %lf", coo.longitude, coo.latitude); NSLog(@"调用一次"); } return; }
长按手势的响应有状态之分,action在 长按手势的 began和ended状态都会被调用一次。把这两个状态区分开就可以。
相关文章推荐
- iphone响应地图长按事件 解决长按响应两次的问题
- 解决dialog中edittext点击两次才响应事件的问题
- 用C++在cocos2d-x 3.2下完美解决Menu吞掉事件导致ScrollView等无法响应的问题
- 解决ViewPager嵌套Fragment内部点击事件无响应问题
- 使用iscroll滑动区域内的div onclick事件单击一次触发了两次问题的解决
- 解决UIScrollView,UIImageView等控件不能响应touch事件的问题
- Sencha Touch 解决 button tap事件 按下和弹起 两次响应
- 关于v4包的Fragment过渡动画的事件监听无响应问题解决
- Androidの解决ViewFlipper与ScrollView滑动响应事件拦截的问题
- 使用jquery on()方法解决html页面点击元素,事件无响应的问题
- 解决ViewFlipper与ScrollView滑动响应事件拦截的问题
- 分析并解决移动端js事件响应慢的问题
- 解决UIScrollView,UIImageView等控件不能响应touch事件的问题
- 解决Popupwindows显示之后,除Home键所有事件不响应问题
- 解决EventBus出现响应不了事件的问题
- 解决Android设置软键盘搜索键以及监听搜索键点击时发生两次事件的问题
- 解决jquery Dialog不响应asp.net事件的问题
- GridView设置Item高度,解决第一个item显示不正常以及事件不响应的问题
- 解决CCScrollView中菜单条目在不可见时仍响应点击事件的问题
- UIButton 点击事件响应延迟 问题解决