MapView - 更改地图中心点

时间:2013-11-18 18:01:22

标签: ios

我有一个覆盖屏幕大部分区域的地图。 在地图上,我有一些图像,按钮,文本框。它们位于地图的顶部,我在这里称之为“无用地图”,而底部则是实际查看地图。这是“有用的地图”。 默认情况下,地图属性centerCoordinate是相对于完整地图的中心,如图中的红色圆圈所示:

有用的地图标记为绿色,我希望绿色圆圈用作中心点。 例如,我可以通过在坐标的纬度上加或减来添加或减去一个引脚,但是我需要添加的实际值取决于缩放级别。

是否可以更改地图中心点,或进行任何可以使地图显示为该点(绿色圆圈)为中心的更改?

这样做的目的是每次用户拖动地图时,我都要将引脚放在(或将当前引脚移动到)伪中心点(绿色点)上。所以要做到这一点,我需要获得centerCoordinate(红色的),然后添加一个偏移量。

2 个答案:

答案 0 :(得分:0)

不要显示地图的用户位置,只需在

处删除注释引脚即可
 MKPointAnnotation *point = [[MKPointAnnotation alloc] init];
 point.coordinate = myCoordinate; //CLLocationCoordinate2D  myCoordinate
 [self.mapView addAnnotation:point];

答案 1 :(得分:0)

您可以为地图添加布局边距。 扩展名MKMapView {     / *     *这是隐藏地图上的合法链接。     * /

public func centerMapWithBottom(bottomPadding: CGFloat) {
    self.layoutMargins = UIEdgeInsets(top: 0, left: 0, bottom: bottomPadding, right: 0)

}

} 这将使地图中心向上移动。同样,也可以在其他情况下完成此操作。