TapGestureRecognizer在IOS6地图中不起作用

时间:2012-12-07 04:25:59

标签: xcode ios6 maps uitapgesturerecognizer

所以无论如何,正常情况下,我的应用程序在iOS5中运行得非常棒。

然后iOS6带有新的地图应用程序,它不再按预期运行。 (在此处插入Roll Eyes图标)

我有一个MapView,其中包含以下用户交互:

  1. 用户可以通过捏合来放大/缩小。
  2. 用户可以双击以放置图钉。
  3. iOS6不再是这种情况,No.2不再适用。 似乎新的MapView不再直接检测到双击。 如果我禁用缩放(在IB中)则可以正常工作。

    那么,我怎样才能做到这一点? 或者最好将操作从“双击”更改为“长按”?

    任何建议或如何在启用缩放时使其工作 非常感谢。

    谢谢你。

1 个答案:

答案 0 :(得分:0)

到底是什么。

没有人回答这个问题,所以我会自己回答。 我做的是一个简单的黑客。

  1. 在同一个viewcontroller中实现touchesBegan委托。
  2. 在那里,检测单次触摸,如果检测到单次触摸,则禁用MapkitView缩放。因此,为MapKitView实现的TapGestureRecognizer将响应。在此 如果我需要,双击将响应。
  3. 当检测到2个触摸(屏幕上有两个手指)时,启用MapkitView的缩放功能。
  4. 这很好用。

    希望这有助于其他与iOS6地图应用程序面临同样问题的人。 令人惊讶的是,这仍适用于谷歌地图(之前的iOS6)。

    感谢。