0

所以无论如何,像往常一样,我的应用程序在 iOS5 中运行得非常棒。

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

我有一个具有以下用户交互的 MapView:

  1. 用户可以通过捏合来放大/缩小。
  2. 用户可以双击以放置图钉。

iOS6不再是这种情况,No.2不再起作用。似乎新的 MapView 不再直接检测双击。如果我禁用缩放(在 IB 中),那么它可以工作。

那么,我怎样才能使这项工作?还是将操作从“双击”更改为“长按”更好?

任何建议或如何在启用缩放的同时使其工作表示赞赏。

谢谢你们。

4

1 回答 1

0

有没有搞错。

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

  1. 在同一个视图控制器中实现 touchesBegan 委托。
  2. 在那里,检测单点触摸,如果检测到单点触摸,则禁用 MapkitView 缩放。因此,为 MapKitView 实现的 TapGestureRecognizer 将响应。在这种情况下,双击将响应我需要的响应。
  3. 当检测到 2 次触摸(屏幕上的两个手指)时,启用 MapkitView 的缩放。

这工作得很好。

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

谢谢。

于 2012-12-08T20:30:16.713 回答