我有一个 MKMapView,我正在添加一个 MKPlacemark 来表示用户刚刚选择的建筑物的位置。用户一次只能选择一个建筑物,而我只是想在他们选择新建筑物时将地标移动到新建筑物。在他们选择的第一座建筑物上,它运行良好并在地图上放置了一个图钉。当我尝试调用setCoordinate
地标以在他们选择新建筑物时更新标记的位置时,我得到了-[MKPlacemark setCoordinate:]: unrecognized selector sent to instance
在 MyViewController.h 我有:
@property (nonatomic, strong)MKPlacemark *selectedBuildingPlacemark;
在 MyViewController.m
@synthesize selectedBuildingPlacemark;
...
if (self.selectedBuildingPlacemark == nil) {
self.selectedBuildingPlacemark = [[MKPlacemark alloc] initWithCoordinate:myCoord addressDictionary:nil];
[mapView addAnnotation:self.selectedBuildingPlacemark];
}
else {
[self.selectedBuildingPlacemark setCoordinate:myCoord];
}
我认为 MKPlacemark 符合 MKAnnotation,因此应该实现setCoordinate
. 有人可以告诉我我的方式的错误吗?