2013-10-29 57 views
7

我的一個應用程序在很高的(最大)縮放級別下使用MKMapView(高細節圖) 隨着iOS7的推出,我幾乎不能接近像之前一樣映射。如何在iOS上獲得最大縮放級別MKMapView

我正在使用mapView setRegion:方法。

我一直在運行測試,這些都是結果:

在iOS版本在全屏縱向模式的MapView跨度:

iOS 5.1: 140 meters 
iOS 6.1: 70 meters 
iOS 7.0.3: 281 meters 
iOS 7.0.3: 160 meters (if pinched manually!!) 

有沒有辦法達到160米(最大縮放級別)以編程方式在iOS 7.0.3上

(我知道水平跨度取決於地形,所以米的數量只是比例的指示)

回答

14

此解決方案的積分轉到YUF this在Apple Developer論壇上的線程:

它使用MKMapCamera來確定縮放級別,而不是setRegion。

MKMapCamera* camera = [MKMapCamera 
cameraLookingAtCenterCoordinate:(CLLocationCoordinate2D)centerCoordinate 
       fromEyeCoordinate:(CLLocationCoordinate2D)eyeCoordinate 
        eyeAltitude:(CLLocationDistance)eyeAltitude]; 
[mapView setCamera:camera animated:NO]; 

如果保持centerCoordinate和eyeCoordinate相同,相機將直視。 海拔高度將讓您控制變焦。它不會一直降到零,但它會提供與以前iOS版本相同的縮放級別。

+1

感謝您給我信用!我用另一個解決方案更新了我在蘋果公司的回覆。 – yuf

+1

美麗。非常感謝。 –