Ben bir gözlemci ekleyerek sorunu çözüldü. Gözlemci sonra onun şeyi yapar ve bundan sonra ek bilgi yukarı gösterir.
kabarcık gösterilmektedir sonra çizgisi balonunda bilgileri güncelleştirmek olamayacağını olduğu ile İçimden sorunları vardı. Bunu yapmanın tek yolu önümde bir tarih var olduğu göz önüne alındığında gibi hissetmedim şeydir, (anladığım kadarıyla) kendi çizgisi kabarcık oluşturmaktır. Bunun üzerine bir alfa ve bir metin ile ekstra bir UIView ekleyerek "... konum verileri alınıyor" diye düzeltildi. Bir konum basıldığında sadece bu görüşü ortaya çıkıp gözlemci bittiğinde, tekrar (ders dışı bir animasyon kullanarak) görünümü gizlemek.
cevabım başkalarına yardımcı umuyoruz.
Kod:
[pin addObserver:self
forKeyPath:@"selected"
options:NSKeyValueObservingOptionNew
context:GMAP_ANNOTATION_SELECTED];
Biraz daha kod:
- (void)observeValueForKeyPath:(NSString *)keyPath
ofObject:(id)object
change:(NSDictionary *)change
context:(void *)context{
NSString *action = (NSString*)context;
MKAnnotationView *annotationView = [(MKAnnotationView*)object retain];
BikeAnnotation *bike = [[annotationView annotation] retain];
if([action isEqualToString:GMAP_ANNOTATION_SELECTED] && [[bike _stationType] intValue] != 5 && [[bike _stationType] intValue] != 6){
BOOL annotationAppeared = [[change valueForKey:@"new"] boolValue];
if (annotationAppeared) {
NSLog(@"Annotation selected");
else {
NSLog(@"annotation deselected");
}
}
}
Ve tıpkı @ sentez en sonra bu koyun:
NSString * const GMAP_ANNOTATION_SELECTED = @"gmapselected";