Immagine invece di un perno di default nel quadro MapKit di iPhone?

voti
6

E 'possibile avere la nostra immagine al posto del PIN predefinito in MapKit mappa su iPhone?

Sto lavorando su un programma che avrebbe mostrato le posizioni degli amici molto simile a Google Latitude e la necessità di mostrare l'immagine di amici presso le loro sedi.

E 'possibile utilizzare il codice JavaScript di Google Map, ma io voglio sapere se qualcuno può dare alcuni esempi di codice per la mappa base MapKit.

È pubblicato 29/09/2009 alle 15:15
fonte dall'utente
In altre lingue...                            


3 risposte

voti
14

Sì, è possibile. Per questo u have a utilizzare MKAnnotationView invece di MKPinAnnotationView. e non utilizzare la proprietà annotation.animatesDrop.

Ecco il codice di esempio è possibile utilizzare nella viewForAnnotation,

    annotation = [[MKAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"try"];
    annotation.canShowCallout = YES;

    annotation.image = [UIImage imageNamed:@"image.png"];


    return annotation;
Risposto il 29/09/2009 a 15:20
fonte dall'utente

voti
2

È anche possibile impostare la cornice dell'immagine. Per questo nel codice qui sopra dobbiamo fare queste semplici modifiche.

UIImage *pinImage = [UIImage imageNamed:@"image.png"];

UIImageView *imageView = [[[UIImageView alloc] initWithImage:pinImage] autorelease];

       imageView.frame = CGRectMake(-20, 0, 40, 30);

[annotation addSubview:imageView];

E dobbiamo commentare la linea

// annotation.image = [UIImage imageNamed:@"image.png"];
Risposto il 29/11/2010 a 07:38
fonte dall'utente

voti
0

Utilizzando span property si può facilmente lo zoom al vostro richiedono

MKCoordinateSpan arco;

MKCoordinateRegion region;


mapView.scrollEnabled=YES;
span.latitudeDelta = 100.0;//more value you set your zoom level will increase
span.longitudeDelta =100.0;//more value you set your zoom level will increase
mapView.showsUserLocation=YES;
region.span = span;


region.center = from.coordinate;
  [mapView setRegion:region animated:YES];
 [mapView regionThatFits:region];
[mapView addAnnotation:from];
Risposto il 25/07/2013 a 08:39
fonte dall'utente

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more