MapKit iPhone显示屏缩放控件

问题描述:

是否可以使用MapKit在iPhone中显示地图,就像我在做的那样,在地图上显示缩放控件?MapKit iPhone显示屏缩放控件

如果不是,我应该用什么标志或方法来增加和缩小缩放比例,所以我可以创建方法,只需按一下按钮即可完成此操作。

它没有任何内置控件。

一对夫妇的建议:

  1. 用户可以预先设置一些跨度,并将其存储在数组中的某个地方,然后你的存储数组中的位置为好。放大/缩小会改变位置并获得跨度。
  2. 在放大由2对当前跨度和分裂时,由2

缩小乘以您在的MapView的区域改变的跨度。所以你必须:

  • 获取mapView的区域。
  • 获取该地区的跨度。
  • 更改跨度到你想要的。
  • 将区域跨度设置为新跨度。
  • 将mapView的区域设置为新区域。

下面是建议2一些代码:

MKCoordinateRegion region = mapView.region; 
MKCoordinateSpan span; 
span.latitudeDelta = region.span.latitudeDelta*2; 
span.longitudeDelta = region.span.longitudeDelta*2; 
region.span = span; 
[mapView setRegion:region animated:TRUE]; 
+0

的感谢region财产! swift版本:'var region = mapView.region; var span = MKCoordinateSpan(); span.latitudeDelta = region.span。latitudeDelta * 2; span.longitudeDelta = region.span.longitudeDelta * 2; region.span = span; mapView.setRegion(region,animated:true);' –

关闭我的头顶我不记得(在窗口框中工作),如果有一个开关来显示缩放控件。我假设你正在讨论显示缩放级别,因为默认情况下,你可以捏住/扩大视图进行缩放。

如果没有显示控件的开关,则需要创建自定义视图图层并将其放置在mapkit视图的顶部。然后,您将需要调用不同的功能来更改缩放级别。

这些函数全部记录在mapkit文档中。只需在文档中心搜索MapKit即可。

编辑: http://developer.apple.com/library/ios/#documentation/MapKit/Reference/MKMapView_Class/MKMapView/MKMapView.html#//apple_ref/doc/uid/TP40008205

按照文档没有显示该控制开关,而变焦enabled属性,让您打开的能力和关闭。

因此,您可以订阅委托函数regionWillChange并使用mapView对象获取缩放级别,然后相应地设置您的图形。

我不认为你应该做的,以放大和缩小的预期的方式是使用捏手势。不过,如果你仍想继续前进,这样做,你应该把自己的按钮在MKMapView,然后用这些修改MKMapView