Automatico "canShowCallOut" annotazione IPHONE

voti
4

In modo wich ho potuto chiamare la funzione che apre automaticamente la mia annotazione (con titolo, sottotitolo, ecc), piuttosto che a toccare l'annotazione sul mapview?

È pubblicato 20/03/2010 alle 17:36
fonte dall'utente
In altre lingue...                            


2 risposte

voti
4

Implementare MKMapViewDelegatedelegato;

implementare - (MKAnnotationView *) mapView: (MKMapView *) mapView_ viewForAnnotation: (id <MKAnnotation>) annotation_;; per esempio come questo:

    - (MKAnnotationView *) mapView: (MKMapView *) mapView_ viewForAnnotation: (id <MKAnnotation>) annotation_ {

    MKPinAnnotationView *pin = (MKPinAnnotationView *) [self.mapView dequeueReusableAnnotationViewWithIdentifier: @"YourPinId"];
    if (pin == nil) {
        pin = [[[MKPinAnnotationView alloc] initWithAnnotation:annotation_ reuseIdentifier: @"YourPinId"] autorelease];
    }
    else {
        pin.annotation = annotation_;
    }
    pin.pinColor = MKPinAnnotationColorRed;
    [pin setCanShowCallout:YES];
    pin.animatesDrop = YES;
    return pin;
}

Mostra il perno dopo la cartina ha terminato il caricamento:

- (void) dropPin {
    [mapView addAnnotation:self.annotation];
    [mapView selectAnnotation:self.annotation animated:YES];        
}

- (void) mapViewDidFinishLoadingMap: (MKMapView *) mapView_ {
    // if done loading, show the call out
    [self performSelector:@selector(dropPin) withObject:nil afterDelay:0.3];
}

Questo codice ha una proprietà chiamata un'annotazione che implementa MKAnnotation. Inoltre, anima la mosca troppo, ma dovrebbe essere abbastanza auto-esplicativo.

HTH.

Risposto il 21/03/2010 a 21:47
fonte dall'utente

voti
3

Alfons ha risposto alla domanda, ma se siete alla ricerca di che cosa esattamente si apre automaticamente la didascalia, è questa parte:

[mapView selectAnnotation:annotation animated:YES]; 
Risposto il 10/01/2012 a 05:09
fonte dall'utente

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