2 abcdefgh xyz abcdeFGh_xyz 于 2012.12.11 16:12 提问

iphone地图上那个红色的针怎么修改

我想知道什么办法能修改iPhone里标记时红色的针,请多多指教。

1个回答

MrsSeven7
MrsSeven7   2012.12.11 16:37
已采纳

你可以修改针的颜色:

MKPinAnnotationColorGreen;
MKPinAnnotationColorPurple
MKPinAnnotationColorRed

也可以自定义图片。

补充:

可以用MKMapView方法修改标记,如下:

- (MKAnnotationView *)mapView:(MKMapView *)_mapView viewForAnnotation:(id <MKAnnotation>)annotation 
{
 MKPinAnnotationView *pinView  = (MKPinAnnotationView *)[_mapView dequeueReusableAnnotationViewWithIdentifier:defaultPinID];
        pinView = [[[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:defaultPinID] autorelease];
        if (annotation == _mapView.userLocation) 
        {
//            pinView.pinColor = MKPinAnnotationColorRed;
//            return pinView;
            return nil;
        }
        pinView.pinColor = MKPinAnnotationColorGreen; // you can use MKPinAnnotationColorPurple, MKPinAnnotationColorRed;
        pinView.canShowCallout = YES;
        pinView.animatesDrop = NO;

        return pinView;
}

自定义标记大头针的图像:

- (MKAnnotationView *)mapView:(MKMapView *)_mapView viewForAnnotation:(id <MKAnnotation>)annotation 
{
    static NSString *AnnotationViewID = @"annotationViewID";

    MKAnnotationView *annotationView = (MKAnnotationView *)[_mapView dequeueReusableAnnotationViewWithIdentifier:AnnotationViewID];

    if (annotationView == nil)
    {
        annotationView = [[[MKAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:AnnotationViewID] autorelease];
    }

    annotationView.image = [UIImage imageNamed:@"yourImageName"];//add any image which you want to show on map instead of red pins
    annotationView.annotation = annotation;

    return annotationView;
}
abcdeFGh_xyz
abcdeFGh_xyz 谢谢
大约 5 年之前 回复
MrsSeven7
MrsSeven7 看一下补充
大约 5 年之前 回复
abcdeFGh_xyz
abcdeFGh_xyz 自定义图片怎么定义?
大约 5 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!