L'origine del pin di annotazione regolare si trova nel mezzo del fondo , quindi il pin punta sempre nello stesso punto.Modifica l'origine dell'immagine della vista annotazione mappa?
Ma quando aggiungo la mia immagine personalizzata, la sua origine è il centro dell'immagine, quindi ogni ingrandimento o riduzione, la parte inferiore della mia immagine punta a un altro punto.
Qui il mio pin è supposto per puntare al centro di Parigi, ma
ma quando lo zoom avanti, il fondo del mio pin non punta al centro di Parigi.
Sto provando con lo CGRect.origin
ma non ho trovato nulla di utile.
Ecco il mio codice:
- (MKAnnotationView *)mapView:(MKMapView *)theMapView viewForAnnotation:(id <MKAnnotation>)annotation
{
MKAnnotationView * customPinView = [[MKAnnotationView alloc] init];
UIImage * img = [UIImage imageNamed:@"waterPin.png"] ;
CGRect resizeRect;
resizeRect.size.height = 40;
resizeRect.size.width = 40;
resizeRect.origin = (CGPoint){0.0f, 0.0f};
UIGraphicsBeginImageContext(resizeRect.size);
[img drawInRect:resizeRect];
UIImage *resizedImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
customPinView.image = resizedImage;
return customPinView;
}
se potessi postare del codice ?? –
appena pubblicato, mi spiace – AMTourky
Quali coordinate (lat/long) è l'annotazione impostata esattamente? Prova a impostare 'customPinView.centerOffset' per regolare l'offset dell'immagine (ma prima verificherei le coordinate). Inoltre, dovresti usare initWithAnnotation invece di solo init per MKAnnotationView. – Anna