iphone - CLLocationCooperative2D 到 MKAnnotation

标签 iphone ios xcode mapkit core-location

我有一个 MapView,我正在尝试在当前坐标处添加注释。

我在 viewWillAppear 中的代码:

CLLocationCoordinate2D location;
location.latitude = [maps.barLat doubleValue];
location.longitude = [maps.barLong doubleValue];
[_mapView addAnnotation:location];

我在 addAnnotation 上遇到错误,内容为

Sending CLLocationCoordinate2D to parameter of incompatible type MKAnnotation.

我看到的所有其他示例都没有问题,我缺少什么?

最佳答案

如果你看Apple's API docsaddAnnotation:方法需要 id<MKAnnotation> ,不是CLLocationCoordinate2D 。这就是你的错误的原因。

如果您只想要一个简单的注释,没有任何花哨的花哨的东西,只需这样做:

CLLocationCoordinate2D location;
location.latitude = [maps.barLat doubleValue];
location.longitude = [maps.barLong doubleValue];
MKPointAnnotation *annotation = [[MKPointAnnotation alloc] init];
annotation.coordinate = location;
[_mapView addAnnotation: annotation];

然而,大多数人最终都会创建自己的类来实现 MKAnnotation协议(protocol),提供自定义注释。但是,如果您只需要一个引脚,上面的方法就可以了。

关于iphone - CLLocationCooperative2D 到 MKAnnotation,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11571630/

相关文章:

iphone - 当 iOS 应用程序/游戏发布到 Facebook 或 Twitter 时使用的链接

iphone - 使用 Evernote API 创建笔记

iphone - 分析时 Instruments.app 崩溃

ios - MPMoviePlayerController 改变视频速度

ios - 布局 UITextField 无论清除按钮 X

iOS - 在另一个 Xcode 项目中包含静态库项目... header 问题

ios - XCode断点不适用于特定项目

objective-c - 如何从 uitableview 单元格的不同部分中的数组生成行上的不同数据

javascript - 让 NSXMLParser 跳过一个元素

iphone - 如何通过 iOS 中的 `null` 解释器对 `json` 对象进行错误检查