Kri*_*hna 8 objective-c mkmapview mkannotationview
我创建了以下自定义注释:
-(MKAnnotationView*)mapView:(MKMapView *)mapView viewForAnnotation:(id<MKAnnotation>)annotation
{
MKPinAnnotationView *view = nil;
if (annotation != mapView.userLocation)
{
view = (MKPinAnnotationView *)[mapView dequeueReusableAnnotationViewWithIdentifier:@"myAnnotationIdentifier"];
if (!view)
view = [[MKPinAnnotationView alloc]initWithAnnotation:annotation reuseIdentifier:@"myAnnotationIdentifier"];
if (((CustomAnnotation *)annotation).annotationType == 1)
{
view.image = [UIImage imageNamed:@"type1.png"];
view.rightCalloutAccessoryView = nil;
view.canShowCallout = YES;
}
else
{
view.image = [UIImage imageNamed:@"type2.png"];
view.rightCalloutAccessoryView = nil;
view.canShowCallout = YES;
}
}
return view;
}
Run Code Online (Sandbox Code Playgroud)
问题:当用户在任何注释图像(type1或type2)上按住2秒钟时,图像将被红色PushPin替换(iPhone MKPinAnnotationView的默认值).
我想避免这种替代.我怎么能这样做?
小智 23
而不是声明和创建MKPinAnnotationView,声明并创建一个普通的MKAnnotationView.
在MKPinAnnotationView喜欢默认为红色图钉,这就是它的功能.