如何在单点显示多个注释详细信息?

时间:2017-06-01 05:26:30

标签: ios xamarin.ios mkmapview

我在xamarin ios工作。我正在使用MKMapView来显示一些位置。我有一些任务和位置(纬度,经度)。我已在Map上映射了位置,当用户点击注释点时,它会显示任务的描述。

但在某些情况下,多个任务可以具有相同的位置,因此在这种情况下,当用户在注释点单击时,任务描述会逐个显示。但我希望当用户点击注释点时,该点的所有任务描述应该像列表一样显示。在xamarin ios中怎么可能?

1 个答案:

答案 0 :(得分:0)

使用自定义注释视图显示该点的所有任务描述:

public override MKAnnotationView GetViewForAnnotation (MKMapView mapView, NSObject annotation)
{    
        if (annotation is MKUserLocation){
            return null; 
        }

        //Use a custom annotationView instead, which inherited from MKAnnotationView, has a label to display description.
        ACustomMKAnnotationView annotationView = mapView.DequeueReusableAnnotation (annotationId);

        if (annotationView == null) {
            annotationView = new ACustomMKAnnotationView (annotation, annotationId);
        }

        annotationView.descriptionLabel.text = "All the task description joined";
        annotationView.CanShowCallout = true;

        return annotationView;
}

参考:https://developer.xamarin.com/guides/ios/platform_features/ios_maps_walkthrough/