Objective C地图查看问题

时间:2010-08-10 19:29:45

标签: objective-c gps mkmapview

我一直在使用地图视图并遇到这些变量:span.longitudeDelta和span.latitudeDelta ...它们似乎会影响屏幕的缩放量(可能通过设置窗口的x / y?)可以有谁告诉我这些值的作用以及它们与屏幕宽度/高度的关系如何与纬度/长度相关?

感谢您的时间。

编辑:我想知道这是因为我想弄清楚我的屏幕正在看什么纬度和长度......示例:如果我放大了我的屏幕的左侧可能是34.533而右边可能是39.324。

1 个答案:

答案 0 :(得分:1)

你有正确的想法。这些值是以地图为中心的地图视图的宽度和高度,以地图的中心点为中心。

map.region是一个可以读取或设置的MKCoordinateRegion。 MKCoordinateRegion是一个包含两个字段的结构:center和span。 map.region.center是一个CLLocation2D结构(有两个字段,纬度和经度),map.region.span是一个MKCoordinateSpan结构,带有你提到的字段。

如果要设置地图以显示给定区域,请创建MKCoordinateRegion,设置属性,然后确保该区域符合地图的大小:

MKCoordinateRegion scaledRegion = [map regionThatFits:region];
[map setRegion:scaledRegion animated:NO];

屏幕的左边缘(粗略地说,因为经度线不平行):

float leftEdgeLongitude = map.region.center.longitude - (map.region.span.longitudeDelta / 2);