Come aggiungere una visualizzazione personalizzata nei richiami delle annotazioni della mappa

Ecco il mio codice. Voglio aggiungere la mia vista callout personalizzata anziché quella predefinita di iOS. So che è rimasta solo la vista callout e right callout, ma ho bisogno di aggiungere un tipo di tooltip vista con il mio background e label.

- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id )annotation { MKAnnotationView *userAnnotationView = nil; if ([annotation isKindOfClass:MKUserLocation.class]) { userAnnotationView = (MKAnnotationView *)[mapView dequeueReusableAnnotationViewWithIdentifier:@"UserLocation"]; if (userAnnotationView == nil) { userAnnotationView = [[MKAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"UserLocation"]; } else userAnnotationView.annotation = annotation; userAnnotationView.enabled = YES; userAnnotationView.canShowCallout = YES; userAnnotationView.image = [UIImage imageNamed:@"map_pin.png"]; UIView *view = [[UIView alloc]initWithFrame:CGRectMake(0,0,141,108)]; view.backgroundColor = [UIColor clearColor]; UIImageView *imgView = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"toltip.png"]]; [view addSubview:imgView]; userAnnotationView.leftCalloutAccessoryView = view; return userAnnotationView; } } 

Immagine per riferimento