わかりましたので、MapKit フレームワークを使用して iOS アプリケーションを作成しています。機能は動作していますが、注釈のアイコンを変更するときに問題が発生しています。注釈アイコンを変更できますが、変更すると、注釈のタイトルとサブタイトルの値が失われます (タップしても何もポップアップしません)。おそらく、最初に作成したときに注釈に識別子を付けていないなどの問題が原因だと思いますが、よくわかりません...
誰かが私に何が起こっているのかを知らせることができれば、それは大歓迎です!
注釈を追加するコードは次のとおりです。
-(void)addAnnotationAtLattitude:(double)lattitude withLongitude:(double)longitude withTitle:(NSString *)title withSubtitle:(NSString *)subtitle{
//Handles the adding off the anotation
CLLocationCoordinate2D annotationCoord;
annotationCoord.latitude = lattitude;
annotationCoord.longitude = longitude;
MKPointAnnotation *annotationPoint = [[MKPointAnnotation alloc] init];
annotationPoint.coordinate = annotationCoord;
annotationPoint.title = title;
annotationPoint.subtitle = subtitle;
[self.MessageMap addAnnotation:annotationPoint];
}
アイコンを変更するコード (デリゲート メソッドを使用) は次のとおりです。
-(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];
}
annotationView.image = [UIImage imageNamed:@"CustomMapAnnotationIcon"];//mycustom image
annotationView.annotation = annotation;
return annotationView;
}