首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >自定义注解引脚干扰Iphone上mkmapview的showuserlocation

自定义注解引脚干扰Iphone上mkmapview的showuserlocation
EN

Stack Overflow用户
提问于 2011-12-31 14:08:06
回答 1查看 352关注 0票数 0

通常情况下,如果您启用了showuserlocation,并转到mapview,则会有蓝点动态放大到用户的当前位置。但是,如果为不同的颜色目的创建了一个自定义注解别针,则showuserlocation功能将消失。newAnnotation下面的代码是罪魁祸首。您如何既有自定义引脚,也显示用户定位能力不受干扰。

代码语言:javascript
复制
 - (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation
 {

 if ([[annotation title] isEqualToString:@"Destination"])
  {
MKPinAnnotationView *newAnnotation = [[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"greenpin"];
newAnnotation.pinColor = MKPinAnnotationColorGreen;
newAnnotation.animatesDrop = YES;
newAnnotation.canShowCallout = YES;
return newAnnotation;
 }

}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-12-31 15:32:24

尝尝这个

代码语言:javascript
复制
- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation
{
    // if it's the user location, just return nil.
    if ([annotation isKindOfClass:[MKUserLocation class]])
        return nil;

    if ([[annotation title] isEqualToString:@"Destination"])
    {
        MKPinAnnotationView *newAnnotation = [[MKPinAnnotationView alloc]  initWithAnnotation:annotation reuseIdentifier:@"greenpin"];
        newAnnotation.pinColor = MKPinAnnotationColorGreen;
        newAnnotation.animatesDrop = YES;
        newAnnotation.canShowCallout = YES;
        return newAnnotation;
    }
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8686654

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档