IPhone programlama için yeni. Ben CoreLocation ve Mapkit API kullanarak bir uygulama yazmak istiyorum. Ben bulmak ve geçerli konum için işaretçilerine eklemek mümkün olmuştur. Şimdi, bölge üzerinde bir daire çizmek için çalışıyorum, ancak bunu yaparken gitmek nasıl emin değilim. Ben, teşekkürler herhangi işaretçiler takdir ediyorum.
[IPhone] google harita üzerinde bir yerin çevresindeki daire çizin
Ben seninle aynı soruyu var sanıyordum. Ve ben bu size yardımcı olacaktır umut bu sorular o bana çok yardımcı oldu, cevap bulduk. MKMapview üstünde Nokta, Çizgi, Poligon Çizim
Bunun aslen iOS SDK etiketli biliyorum 3.0 , ama o anda, o anki SDK çünkü olmasıydı varsayalım. Biri bu cevabını arıyor, ama iOS 4.0+ kullanabilirsiniz, o zaman burada benim çözüm.
Yani, bir varsayıyoruz UIViewController, bu sahibidir MKMapView.
@interface MapViewController : UIViewController<MKMapViewDelegate> {
@private
MKMapView* mapView;
}
@property (nonatomic, retain) IBOutlet MKMapView* mapView;
@end
ve kurulum da bağlantılarını Interface Builder (XCode şimdi) fiili bağlamak MKMapViewiçin mapViewçıkış. Sonra da etrafında çember çizmek istiyorum konumunu içeren bazı değişken vardır: location. Sadece bir oluşturmanız gerekir MKCircleve Blogunuza eklemek mapViewbir şekilde bindirme :
CLLocationCoordinate2D location = [self getTheLocationSomehow];
CLLocationDistance radius = 50.0; // in meters
MKCircle* circle = [MKCircle circleWithCenterCoordinate: location radius: radius];
[mapView addOverlay:circle];
Eğer çevrenizde görünümünü özelleştirmek istiyorsanız, görünümünüzü kontrolör uygulayabilir MKMapViewDelegateve uygulamak mapView:viewForOverlay:şöyle:
- (MKOverlayView *)mapView:(MKMapView *)mapView viewForOverlay:(id <MKOverlay>)overlay {
MKCircle* circle = overlay;
MKCircleView* circleView = [[[MKCircleView alloc] initWithCircle: circle] autorelease];
// make the circle red with some transparency and stroke
circleView.fillColor = [UIColor colorWithRed:1.0 green:0.0 blue:0.0 alpha:0.25];
circleView.strokeColor = [UIColor redColor];
circleView.lineWidth = 2.0;
return circleView;
}
Ayarlamayı unutmayın mapView.delegate = selfgörünümü denetleyicisi kodu (örn içinde viewDidLoadyoluyla) veya grafiksel Interface Builder .













