В Wich образом я мог бы вызвать функцию, которая автоматически открываться моей аннотация (с заголовком, подзаголовком, и т.д.), а не коснуться аннотации на MapView?
Автоматический «canShowCallOut» аннотация IPhone
голоса
4
2 ответов
голоса 4
4
Реализовать MKMapViewDelegateделегат;
Реализовать - (MKAnnotationView *) mapView: (MKMapView *) mapView_ viewForAnnotation: (id <MKAnnotation>) annotation_;; например , как это:
- (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;
}
Показать булавку после того, как карта по окончанию загрузки:
- (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];
}
Этот код имеет свойство называется аннотация , которая реализует MKAnnotation. Кроме того , он оживляет муху тоже, но она должна быть достаточно самостоятельным объяснением.
НТН.
голоса 3
3
Альфонс ответил на вопрос, но если вы ищете что именно автоматически открывает выноски, именно эта часть:
[mapView selectAnnotation:annotation animated:YES];













