MKMapView显示mapView中心的引脚,我想将引脚位置定位在中心上方。我该怎么做?
这是我的代码
- (void) location
{
MKCoordinateRegion region;
MKCoordinateSpan span;
span.latitudeDelta = 0.1162;
span.longitudeDelta = 0.1160;
CLLocationCoordinate2D location;
location.latitude = 65.494806;
location.longitude = -23.577569;
region.span=span;
region.center=location;
PlaceMark *add_Annotation = [[[PlaceMark alloc] initWithCoordinate:location] autorelease];
[add_Annotation setTitle:@"myTitle"];
[add_Annotation setSubTitle:@"myAddress"];
[mapView addAnnotation:add_Annotation];
[mapView setRegion:region animated:TRUE];
[mapView regionThatFits:region];
}
答案 0 :(得分:2)
如果你想将引脚保持在那些坐标但是使地图的中心低于引脚,使引脚略高于中心,则将center
的{{1}}偏移一小部分纬度范围。
而不是:
region
这样做:
region.center=location;
增加/减少除数以减少/增加偏移。
此外,不需要行region.center = CLLocationCoordinate2DMake(
location.latitude - (span.latitudeDelta/5.0),
location.longitude);
- 您可以将其删除
首先,[mapView regionThatFits:region];
已经setRegion
本身,其次,regionThatFits
返回值,但代码未处理任何返回值。