【发布时间】:2014-07-30 07:31:15
【问题描述】:
我是非常 iOS 编程的新手,很抱歉这个问题听起来很琐碎。但是在网上搜索了几个小时后,我放弃了。
我需要在我的 iOS 应用程序中获取地图的当前缩放级别,这样当我更改当前视图时,我可以保留缩放级别。使用this code,我可以获取和设置缩放级别。我实现了MKMapViewDelegate协议的mapView:regionDidChangeAnimated:方法。但是这个方法在地图的初始“放大”动画期间被多次调用,如果在此期间我需要更新地图,我可能有错误的缩放级别。我当然不想关闭地图动画。因此,我一直在寻找一种方法来确定地图当前是动画还是静止,然后再读取和存储缩放级别。
我正在使用MKMapView。
【问题讨论】:
-
你用的是MKMapview还是谷歌地图?
-
@kirtiavaiya
MKMapView. -
我想你可能会使用 MKMapview ,你能说说你为什么使用 MapKit
-
@kirtiavaiya 我的错。我也更新了问题。
-
您会“改变当前视图” 地图正在制作动画吗?这似乎不太可能。此外,MKMapView 并不像谷歌地图那样真正适用于“缩放级别”。相反,您可能会发现在视图更改之前存储 region 或 visibleMapRect 属性更简单,返回时执行 mapView.region = savedRegion 或 mapView.visibleMapRect = savedVisibleMapRect。