Um eine benutzerdefinierte Anmerkungsansicht (Ihr Ersatz für die Standard-PIN) erstellt haben, können Sie die image
Eigenschaft des MKAnnotationView
im viewForAnnotation
Verfahren eingestellt gerade:
- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation
{
if ([annotation isKindOfClass:[MKUserLocation class]])
{
return nil;
}
else if ([annotation isKindOfClass:[YourAnnotationClassHere class]]) // use whatever annotation class you used when creating the annotation
{
static NSString * const identifier = @"MyCustomAnnotation";
MKAnnotationView* annotationView = [mapView dequeueReusableAnnotationViewWithIdentifier:identifier];
if (annotationView)
{
annotationView.annotation = annotation;
}
else
{
annotationView = [[MKAnnotationView alloc] initWithAnnotation:annotation
reuseIdentifier:identifier];
}
annotationView.canShowCallout = NO; // set to YES if using customized rendition of standard callout; set to NO if creating your own callout from scratch
annotationView.image = [UIImage imageNamed:@"your-image-here.png"];
return annotationView;
}
return nil;
}
Vielleicht möchten Sie auch die centerOffset
Eigenschaft einstellen um den Pin genau so auszurichten, wie Sie es möchten.
In Bezug auf die Anpassung des Callouts ist der einfachste Ansatz, leftCalloutAccessoryView
, rightCalloutAccessoryView
und/oder detailCalloutAccessoryView
anzugeben. Dies gibt Ihnen einen überraschenden Grad an Kontrolle, das Hinzufügen alle Arten von Bildern, Etiketten, usw.
Wenn Sie eine radikale Neugestaltung des callout tun möchten, können Sie viewForAnnotation
canShowCallout
-NO
gesetzt und dann auf setSelected
in Ihrem antworten benutzerdefinierte Anmerkungsansicht, um Ihren eigenen Callout anzuzeigen. In Swift finden Sie unter Customize MKAnnotation Callout View? einige Optionen zum Anpassen der Callouts.
Vielen Dank ... :) – Abhishek
@Abhishek Es gibt keine Standard-Popover-Steuerung in iOS für iPhone-Geräte integriert. Sie müssten eine Drittanbieter-Bibliothek verwenden. Wenn Sie google oder suchen Sie S.O. Für "iphone popover" werden Sie viele Optionen sehen. – Rob
yup hat es dank allot erhalten – Abhishek