我在地图上有一个叠加层,我想更改它的坐标。为了无缝地做到这一点,我将在对视图进行更改后调用setNeedsDisplayInMapRect:方法。
我已经通过更改 fillColor 对其进行了测试,它工作正常:
overlayView.fillColor = [[UIColor greenColor] colorWithAlphaComponent:0.3];
[overlayView setNeedsDisplayInMapRect:mapView.visibleMapRect];
但是,我似乎碰壁了,试图也改变我的覆盖视图的中心坐标(这是一个带有MKCircle的MKCircleView)。MKAnnotation中有一个
MKCircle 符合的方法,称为setCoordinate: - 这似乎是我需要的。不幸的是,circle
MKCircleView 中的属性是只读的。此外MKOverlayViewoverlay
中的属性也是只读的。
实际上有没有一种方法可以更改叠加层的坐标,而无需删除叠加层视图并添加一个新视图(这会导致屏幕上非常明显的闪烁。)?