Objective c 目标C地图视图问题

Objective c 目标C地图视图问题,objective-c,gps,mkmapview,Objective C,Gps,Mkmapview,我一直在使用地图视图,遇到了以下变量:span.longitudeDelta和span.latitudeDelta。。。它们似乎会影响屏幕的缩放量(可能是通过设置窗口的x/y?),有人能告诉我这些值的作用以及它们与屏幕宽度/高度(以lat/long为单位)的关系吗 谢谢你抽出时间 编辑:我想知道这一点,因为我正试图弄清楚我的屏幕是什么程度的横向和纵向。。。。示例:如果我被放大,屏幕的左侧可能是34.533,右侧可能是39.324。你的想法是正确的。这些值是以度为单位的地图视图的宽度和高度,以地图

我一直在使用地图视图,遇到了以下变量:span.longitudeDelta和span.latitudeDelta。。。它们似乎会影响屏幕的缩放量(可能是通过设置窗口的x/y?),有人能告诉我这些值的作用以及它们与屏幕宽度/高度(以lat/long为单位)的关系吗

谢谢你抽出时间


编辑:我想知道这一点,因为我正试图弄清楚我的屏幕是什么程度的横向和纵向。。。。示例:如果我被放大,屏幕的左侧可能是34.533,右侧可能是39.324。

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

map.region是一个可以读取或设置的MKCoordinateRegion。MKCoordinateRegion是一个具有两个字段的结构:中心和跨度。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);