Код, который у меня есть:
MKPinAnnotationView *pinView = (MKPinAnnotationView *)[mapView dequeueReusableAnnotationViewWithIdentifier:@"Pin"];
if(pinView == nil)
{
pinView = [[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"Pin"];
pinView.annotation = annotation;
pinView.animatesDrop = YES;
[pinView setCanShowCallout:YES];
if([[(MapPin *)annotation title] isEqualToString:@"Starting Location"])
{
pinView.pinColor = MKPinAnnotationColorGreen;
pinView.rightCalloutAccessoryView = nil;
}
else
{
pinView.rightCalloutAccessoryView = [UIButton buttonWithType:UIButtonTypeDetailDisclosure];
pinView.pinColor = MKPinAnnotationColorRed;
}
}
return pinView;
Проблема, конечно, в том, что я должен вернуть pinView, который я выделил и должен был в какой-то момент освободить.Однако, как только я возвращаю pinView, я не могу освободить его, потому что вызов метода завершается.Как мне обойти это?Спасибо!