MKMapView不会滚动180度
问题描述:
我有一个MKMapView,中心设置为-42,179.5度并启用滚动。我可以滚动,因此中心位于小于180度的位置,但是如果我尝试向东滚动经过子午线,则滚动会被阻止 - 我必须在全球范围内滚动。对于新西兰的人来说,这样说很温和,不方便。MKMapView不会滚动180度
如何在MKMapView中启用滚动横跨子午线?
答
根据苹果开发者论坛上的帖子,这是iOS中已知的一个报告错误。苹果的地图应用程序在iOS 5下有相同的问题,但不是在iOS 6下,尽管问题仍然存在于MKMapView中。
大概这个问题会在底层的bug被修复时开始工作。同时,如果有人有变通办法,我会很感兴趣。
答
此问题将在iOS 7中修复。地图视图现在可以跨越第180个子午线。
答
没有开关可以在基准限制范围内滚动。 (经度-180/180)
您可以检测自己:
在regionDidChangedAnimated
,发现右边框的坐标,如果他们是附近-180或180,显示一个箭头按钮(或试图拦截滚动手势),并调用setRegion
或setCenter
,修改后的值使得新区域不再限制数据限制。
我不认为这是一个错误。地球投影到一个平坦的矩形,范围从-180,180。我预计相反:如果它可以通过MkPapKit在基准极限(180)上滚动,我预计许多应用程序会崩溃。 (即使两架喷气式战斗机的导航系统在超过基准限制时也会坠毁)。在你的应用程序中不要这么做是一个好主意,并且不支持这一点。 – AlexWien 2013-06-18 16:43:58