2012-03-22 5 views
0

MKAnnotationsについて質問があります。私はmapViewアノテーションに追加して、典型的なピンで描画する必要があります。どうしたらいいですか?私は座標getterを実装しました。座標は読み込み専用であり、そのメソッドの座標に値を与えました。このような注釈を追加すると: [self.mapView addAnnotations:self.annotations]; 十分ではありませんか?私のmapViewではピンが表示されていないので、あるメソッドを呼び出す必要があるかどうかわからない、または座標のセッターを呼び出さなければならない(しかし、自分のmapViewがAnnotationクラスのgetterを呼び出すと思った各注釈にその座標を与える)。私のmapView.annotationsは注釈を持っていますが、地図には表示されません。注釈をmapViewに表示する方法

おかげ

+0

コードを投稿してください。 – Anna

答えて

0

は、あなたがする必要があるすべては、あなたがMKAnnotationとあなたの.hファイルを拡張する必要がPinObjectで

PinObject* pin = [[PinObject alloc] init]; 
[pin setCoordinate:CLLocationCoordinate2DMake(double latitude, double longitude)]; 
[map addAnnotation:pin]; 

で次のようになります。

#import <Foundation/Foundation.h> 
#import <MapKit/MapKit.h> 

@interface PinObject : NSObject <MKAnnotation>{ 
} 

@property (nonatomic, readonly) CLLocationCoordinate2D coordinate; 
- (void)setCoordinate:(CLLocationCoordinate2D)newCoordinate ; 
@end 

また、する必要がMapKitフレームワークとCoreLocationフレームワークをプロジェクトに追加する

InあなたのPinObject.mはあなたを提出私はあなたを助け願っています方法

- (void)setCoordinate:(CLLocationCoordinate2D)newCoordinate { 
    coordinate = newCoordinate; 
} 

を実装する必要があります。

+0

完璧!出来た!!ありがとう。私の問題は、私はsetCoordinateメソッドを呼び出していないということでした。私は初心者です:) – Stacky

関連する問題