0

我在 MKMapview customannotationview 中工作,并使用以下代码成功地将 pin drop 自定义到我自己的图像中,

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

    if([annotation isKindOfClass:[MyAnnotationClass class]]){
    //Try to get an unused annotation, similar to uitableviewcells
        MKAnnotationView *annotationView=[mapView dequeueReusableAnnotationViewWithIdentifier:parkingAnnotationIdentifier];
    //If one isn't available, create a new one
        if(!annotationView){
            annotationView=[[MKAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:parkingAnnotationIdentifier];
        annotationView.image = [UIImage imageNamed:@"my image.png"];

        }
        return annotationView;
    }
    return nil;
}

即,我将注释视图的图像自定义为我的图像,但我需要在注释视图的右上角有一个气泡或标签,如下所示,

如何得到它?您的帮助肯定会得到赞赏。

在此处输入图像描述

4

1 回答 1

0

MKAnnotationView 只是继承自 UIView。因此您可以向其中添加自己的子视图。

解决方案:

  1. 在右上角添加横幅

  2. 如果你想在横幅上处理触摸事件,你应该处理 hitTest 问题。只需在下面覆盖以扩展触摸边界。

    - (BOOL)pointInside:(CGPoint)point
               withEvent:(UIEvent *)event
    
于 2015-05-12T11:04:20.027 回答