Automatisk "canShowCallOut" merknad IPHONE

stemmer
4

I wich måte kan jeg kalle den funksjonen som åpnes automatisk min merknad (med tittel, undertittel, etc), i stedet for å røre på merknaden på mapview?

Publisert på 20/03/2010 klokken 16:36
kilden bruker
På andre språk...                            


2 svar

stemmer
4

Implementere MKMapViewDelegatedelegat;

implementere - (MKAnnotationView *) mapView: (MKMapView *) mapView_ viewForAnnotation: (id <MKAnnotation>) annotation_;; for eksempel slik:

    - (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;
}

Vis pinnen etter at kartet er ferdig lastet:

- (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];
}

Denne koden har en egenskap kalt merknad som implementerer MKAnnotation. Også animerer det knappenål falle også, men det bør være ganske selvforklarende.

HTH.

Svarte 21/03/2010 kl. 20:47
kilden bruker

stemmer
3

Alfons svarte på spørsmålet, men hvis du er ute etter hva automatisk åpner bildeforklaringen, er det denne delen:

[mapView selectAnnotation:annotation animated:YES]; 
Svarte 10/01/2012 kl. 04:09
kilden bruker

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