9

次のようにカスタム MKAnnoationView を作成します。

- (MKAnnotationView *)mapView:(MKMapView *)theMapView viewForAnnotation:(id <MKAnnotation>)annotation
{
    static NSString* AnnotationIdentifier = @"AnnotationIdentifier";
    MKAnnotationView* customPinView = [[MKAnnotationView alloc]
                                           initWithAnnotation:annotation reuseIdentifier:AnnotationIdentifier];

    UIImage *pinImage = [PowerPlantAnnotation getAnnotationImageForEnergySource:((PowerPlantAnnotation*)annotation).energySource];
    customPinView.image = pinImage;
    return customPinView;
}

多かれ少なかれ適切な場所に配置したい画像が得られますが、完全ではありません。私のイメージは次のようになります。

ここに画像の説明を入力

標準のピン ビューがマップ座標を指すように、ティア ドロップの一番下のポイントが注釈マップ座標を指すようにします。どうすればこれを達成できますか? 現在、私の画像がマップ座標の中心にあるように見えます。

4

1 に答える 1

15

デフォルトでは、注釈ビューの中心は注釈座標に配置されます。ビューの位置を調整するには、centerOffsetプロパティを設定します。

annotationView.centerOffset = CGPointMake(0.0f, -annotationViewHeight/2);
于 2012-12-12T20:48:09.960 に答える