拖动图钉时自动滚动mkmapview

时间:2012-05-12 11:09:01

标签: iphone objective-c mkmapview mkplacemark

是否有任何好的代码在拖动引脚时实现MKMapView的自动滚动?

我想要实现的效果是当我拖动图钉并到达地图边缘时滚动地图。当我将引脚移出边缘时,我希望滚动停止,当我放下它时,映射外壳移动直到引脚到达屏幕中心。

我知道如何将地图置于所选位置的中心,但我真的不知道如何在拖动时滚动它。

如果有人能指导我如何实现它的逻辑,那将会非常有帮助。

1 个答案:

答案 0 :(得分:0)

MKMapRect mapRect = [self.mapView visibleMapRect];

CLLocationCoordinate2D coordinate = CLLocationCoordinate2DMake(42.777126,-76.113281);

MKMapPoint point = MKMapPointForCoordinate(coordinate);
mapRect.origin.x = point.x - mapRect.size.width * 0.3;
mapRect.origin.y = point.y - mapRect.size.height * 0.70;

[self.mapView setVisibleMapRect:mapRect animated:YES];