Ben MapLocation, özel MKAnnotation sınıf yaptık. Ben hiçbir sorun ayarlamak veya bir MKAnnotationView oluşturmak için bu yöntemde dışında özelliklere alma yaşıyorum. o ek açıklamanın indeksinden bir konum türünü arayabilir ve annotationView için özel açıklama görüntülerin bir ailenin birini seçmek gerekiyordu çünkü ben burada bunu yapmak gerekiyor.
MapLocation.h ve .m özel alıcıları ve ayarlayıcıları kurma sayısız denemeden sonra ben bile, (zorunlu) alıcı, başlık kopyalamak TITLE2 olarak adlandırın ve bunun dönüş değeri elde etmeye nerede için aşağı haşlanmış . Bu benim kodudur:
-(MKAnnotationView *)mapView:(MKMapView *)theMapView viewForAnnotation:(id <MKAnnotation>)annotation {
static NSString *placemarkIdentifier=@Map Location Identifier;
NSString *str1=annotation.title;
NSString *str2=annotation.title2;
if([annotation isKindOfClass:[MapLocation class]]) {
MKAnnotationView *annotationView=(MKAnnotationView *)[theMapView dequeueReusableAnnotationViewWithIdentifier:placemarkIdentifier];
if (annotationView==nil) {
annotationView=[[MKAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:placemarkIdentifier];
}
else
annotationView.annotation=annotation;
return annotationView;
}
return nil;
}
4 satırda, başlık doğru döndürülür, ancak kopyalanan yönteme 5 hattın çağrı konudaki hata mesajı verir.
Ben XCode dokümanlarında benziyordu, ama muhtemelen sadece o kadar bu yöntem görüyor ilan etmek nasıl girmem. Tuhaf başlık getter değil title2 kopya olmadığı belirtildi.













