【发布时间】:2013-03-19 08:47:15
【问题描述】:
我正在尝试为我的地图上的注释创建自定义注释视图。我通过调整协议MKMapViewDelegate 并覆盖函数mapView:viewForAnnotation: 来做到这一点。一切正常,唯一的问题是我还将showsUserLocation 设置为TRUE,这意味着我在mapView:viewForAnnotation: 方法中获得的一个“注释”属于MKUserLocation 类。
我不希望用户位置注释有我的自定义注释视图,我希望那个显示默认的用户位置注释视图!如何返回用户位置的默认用户位置注释视图或将其从注释中排除(来自mapView:viewForAnnotation:)?
我尝试在mapView:viewForAnnotation: 方法中捕获UserLocation,但我不知道返回什么! (在这个例子中,我返回一个标准的 MKAnnotationView,但这看起来不像默认的 UserLocation Annotation(显然。)
if (![[annotation class] isEqual:[MKUserLocation class]]) {
MKAnnotationView *view = [[MKAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"customAnnotation"];
// edit the custom view
return view;
}
MKAnnotationView *view = [[MKAnnotationView alloc] init];
return view;
【问题讨论】:
-
请编写您在 mapView:viewForAnnotation 中实现的代码
标签: ios objective-c mkmapview mkannotation