使用MKPolyLine在MKMapView上缩放级别和注释

时间:2011-03-14 17:05:46

标签: iphone objective-c mkmapview mkannotation

我在MKMapView上绘制了3个MKPolyLine。如何缩放显示这三条路线的最佳可能值? 我知道我必须使用setRegion方法。但是我对如何计算MKCoordinateRegion和MKCoordinateSpan感到困惑。 有人可以帮我吗?感谢

另一个问题是我如何在MKPolyLine的中间显示一个注释(即:路线的中间)??

1 个答案:

答案 0 :(得分:1)

我会做以下事情:

  • 在所有折线中查找最大和最小纬度和经度值。然后做:

CLLocationDegrees deltaLat = maxLat-minLat;

CLLocationDegrees deltaLong = maxLong-minLong;

CLLocationCoordinate2D centerCoord = CLLocationCoordinate2DMake(deltaLat/2, deltaLong/2);

MKCoordinateSpan span = MKCoordinateSpanMake(deltaLat, deltaLong);  

MKCoordinateRegion region = MKCoordinateRegionMake(centerCoord, span);

[mapView setRegion : region animated : YES];