4
我正在試圖在MapKit中添加一個環形覆蓋圖。減去兩個MKCircle或我如何在MapKit的地圖上畫一個環?
我可以從另一個MKCircleView中減去一個MKCircleView,還是需要編寫我自己的自定義覆蓋?
我正在試圖在MapKit中添加一個環形覆蓋圖。減去兩個MKCircle或我如何在MapKit的地圖上畫一個環?
我可以從另一個MKCircleView中減去一個MKCircleView,還是需要編寫我自己的自定義覆蓋?
對於畫面中的獨一無二的戒指,你不需要創建自定義覆蓋。
要繪製基本環,請添加一個MKCircle
及其MKCircleView
,根據您想要的環厚度設置lineWidth
。
//Create the MKCircle (could be in viewDidLoad)...
MKCircle *c = [MKCircle circleWithCenterCoordinate:
CLLocationCoordinate2DMake(someLat, someLong)
radius:2000];
[myMapView addOverlay:c];
//In viewForOverlay delegate method, return a MKCircleView...
-(MKOverlayView *)mapView:(MKMapView *)mapView viewForOverlay:(id<MKOverlay>)overlay
{
if ([overlay isKindOfClass:[MKCircle class]])
{
MKCircleView *cv = [[MKCircleView alloc] initWithCircle:overlay];
cv.lineWidth = 15; // <-- controls thickness of ring
cv.strokeColor = [UIColor greenColor];
cv.alpha = 0.75;
return cv;
}
return nil;
}
是.lineWidth in Pixels? – TimoP 2012-04-02 16:28:59
我認爲這是點,但實質上是。它會根據縮放級別自動縮放。 – Anna 2012-04-02 16:41:16
好的,謝謝。例如,我需要一個距離地圖上某點30米距離的10米寬的區域。我試試這個。 – TimoP 2012-04-02 17:00:08