【问题标题】:A better way to mark location on a map在地图上标记位置的更好方法
【发布时间】:2012-05-04 17:10:25
【问题描述】:

我正在制作一个 iOS 应用,我希望用户在地图上定期标记位置。在 iOS 中标记位置的默认方法是在地图中心或用户触摸的位置放置一个图钉(使用手势识别器)。

然后为了准确地将图钉标记到所需位置,用户握住图钉并可以再次放下它。如果您在 iOS 地图应用程序上执行过此操作,您就会知道以这种方式准确地标记位置是很困难的。它看起来很酷,但在我看来需要反复试验。

如果我能帮上忙,我想让这个过程更顺畅,更明显的是我的应用程序。 那么有没有其他方法可以让用户在地图上标记位置,而无需进行默认的图钉拖放操作?欢迎任何建议:-)

【问题讨论】:

    标签: ios user-interface mapkit mkannotation mkannotationview


    【解决方案1】:

    只是一个想法......您可以用手指移动地图,而不是移动图钉,并将图钉始终保持在 mapView 的中间(可能标有十字准线或其他东西)。然后就可以使用mapView的“center”方法获取Pin的坐标了。这样您就不会用手指遮住大头针/十字准线。

    【讨论】:

      【解决方案2】:

      我建议您再次查看地图应用。当您将手指放在掉落的大头针上时,请注意地图上大头针底部的位置。在快速反弹之后,大头针实际上落在了这个确切的位置。该图钉也位于用户手指上方约 20 处。

      虽然这不是最明显的,但在我看来它非常准确。足以在 Geocoder API 中查询地址,或者只是获取坐标。请记住,GPS 的精度最多为 5-10 米。放大将使用户走得更准确。

      但如果此解决方案不是您想要的,我会在地图中心覆盖一个点,并确保它不会响应触摸,从而可以在该点下方的地图上移动。当触摸结束时,然后在该点所在的地图中间放置一个大头针。如果再次开始触摸,请从地图中弹出图钉。我不认为在地图独立移动时已经在地图上的图钉留在原地看起来不错。

      【讨论】:

      • ya pin 静态停留在中间,就像在 yelp 应用程序上看起来有点“hacky”。有一个覆盖点更合法!谢谢!
      猜你喜欢
      • 2018-03-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-29
      • 2019-10-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多