Volevo visualizzare Google map in una visualizzazione mappa su cui voglio disegnare un poligono / cerchio.
Qualche consiglio?
Volevo visualizzare Google map in una visualizzazione mappa su cui voglio disegnare un poligono / cerchio.
Qualche consiglio?
Il modo in cui sto leggendo la tua domanda è che si desidera di programmazione disegnare il poligono sulla mappa. Per questo, consultare le documentazione di Apple su MapKit.
Non è necessario aggiungere una vista trasparente sopra la mappa MapKit ( MKMapView). Si crea un overlay oggetto, in questo caso un MKPolygon. (nell'esempio seguente, la variabile mapsarà il MKMapViewcaso di proprietà del controller della vista che si inserisce questo codice in):
CLLocationCoordinate2D points[4];
points[0] = CLLocationCoordinate2DMake(41.000512, -109.050116);
points[1] = CLLocationCoordinate2DMake(41.002371, -102.052066);
points[2] = CLLocationCoordinate2DMake(36.993076, -102.041981);
points[3] = CLLocationCoordinate2DMake(36.99892, -109.045267);
MKPolygon* poly = [MKPolygon polygonWithCoordinates:points count:4];
poly.title = @"Colorado";
[map addOverlay:poly];
Poi, se si desidera personalizzare l'aspetto (colori, ictus, ecc) della sovrapposizione, si implementa il MKMapViewDelegateprotocollo nel controller della vista che avete che possiede l' MKMapViewoggetto e fornire un'implementazione di mapView:viewForOverlay:
- (MKOverlayView *)mapView:(MKMapView *)mapView viewForOverlay:(id <MKOverlay>)overlay
{
if ([overlay isKindOfClass:[MKPolygon class]])
{
MKPolygonView* aView = [[[MKPolygonView alloc] initWithPolygon:(MKPolygon*)overlay] autorelease];
aView.fillColor = [[UIColor cyanColor] colorWithAlphaComponent:0.2];
aView.strokeColor = [[UIColor blueColor] colorWithAlphaComponent:0.7];
aView.lineWidth = 3;
return aView;
}
return nil;
}
Naturalmente, ricordate sempre di assegnare realmente delegato dell'istanza mappa per il vostro controller della vista (MKMapViewDelegate), sia nel costruttore di interfaccia, o nel codice (ad esempio viewDidLoad).
Ho usato le idee da questo post del blog le persone per raggiungere questo obiettivo. Fondamentalmente comporta l'aggiunta una vista trasparente per la mappa. La mappa permette poi di convertire posizioni per i punti sulla vista. Fatemi sapere se il sito non ti aiuta e posso cercare di scavare un esempio dal mio codice.