web-dev-qa-db-ja.com

iOSのMKAnnotationに詳細を追加する方法

場所のタイトル、説明、日付、場所の名前など、MKAnnotationに詳細を追加したいと思います。したがって、必要なのは4行になります。しかし、タイトルとサブタイトルの2つのパラメーターのみをMKAnnotationに渡すことができることがわかりました。地図に詳細を追加するにはどうすればよいですか? Plzは私を助けます..事前に感謝します。

20
S.P.

カスタムMKAnnotationViewオブジェクトの作成を見てください...これは基本的に、マップ注釈用に調整されたUIViewです。そのオブジェクトには、4つのカスタムラベルを含めることができます。

MKMapViewDelegateクラスでは、viewForAnnotationメソッドを実装します。

- (CustomMapAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation
{
    CustomMapAnnotationView *annotationView = nil;

    // determine the type of annotation, and produce the correct type of annotation view for it.
    CustomMapAnnotation* myAnnotation = (CustomMapAnnotation *)annotation;

    NSString* identifier = @"CustomMapAnnotation";
    CustomMapAnnotationView *newAnnotationView = (CustomMapAnnotationView *)[self.mapView dequeueReusableAnnotationViewWithIdentifier:identifier];

    if(nil == newAnnotationView) {
        newAnnotationView = [[[CustomMapAnnotationView alloc] initWithAnnotation:myAnnotation reuseIdentifier:identifier] autorelease];
    }

    annotationView = newAnnotationView;
    [annotationView setEnabled:YES];
    [annotationView setCanShowCallout:YES];

    return annotationView;
}

そして、注釈があるところならどこでもカスタムビューが表示されます...ステップバイステップのチュートリアルが必要な場合は、 このビデオをチェックしてください

お役に立てれば

[〜#〜]編集[〜#〜]

私は実際に新しいものを見つけました マップの例 Apple開発サイト...にはあなたが通過する必要のあるすべてのソースコードがあります。彼らはまたカスタムMKAnnotationViewを使用していますWeatherAnnotationViewと呼ばれます

15
Ryan Ferretti