【问题标题】:how can I set up a location in my mkannotationview in Swift?如何在 Swift 的 mkannotationview 中设置位置?
【发布时间】:2016-05-16 23:00:51
【问题描述】:

在我的代码中,我向地图添加了一个图钉。到目前为止,我正在这样做:

let pinLocation = CLLocationCoordinate2D(
   latitude: locationTemp.latitude,
   longitude: locationTemp.longitude
)

let annotation = MKPointAnnotation()
annotation.coordinate = pinLocation

self.map.addAnnotation(annotation)

但现在,由于我想创建自定义图钉图像,我已阅读我必须切换到 MKAnnotationView。但我不知道如何设置此注释的位置,以便它显示与我之前的图钉相同的注释。

我试过了:

var pinView = MKAnnotationView()
pinView.image = UIImage(named:"MyCustomPin")

但我找不到在此处设置我的 locationTemp 数据的方法。

【问题讨论】:

    标签: ios swift mapkit mkannotation mkannotationview


    【解决方案1】:

    如果你查看文档,你会看到 MKAnnotationView 有一个 init 方法

    init(annotation annotation: MKAnnotation?, reuseIdentifier reuseIdentifier: String?)
    

    所以视图和坐标之间存在联系。

    【讨论】:

    • 好的,谢谢,但我仍然不确定如何只使用我的普通 gps 数据(存储在locationTemp)并在我的情况下使用它......你能给我看一些简短的例子吗?
    • 这完全取决于你想怎么做。使用自定义注释可能会变得非常复杂和复杂(您可以更改颜色、形状、图像、使其脉动、使其具有动画效果、具有静态或动态内容的弹出窗口等)。如果您只想从简单的事情开始,也许寻找关于 MKPinAnnotationView 的教程,而不是 MKAnnotationView,将满足您的需求。
    • 嗯,我只想在地图上显示一个带有特定坐标的普通MKAnnotationView。我会使用MKPinAnnotationView,但我将无法设置自定义图像而不是苹果的默认 pin
    • 我看看我对 MKAnnotationView 的使用是否适合作为示例发布,但它太长且太复杂而无法作为答案发布,并且可能会在它四处移动时造成混淆而不是澄清实时坐标以连续流的形式输入其中,而不是在初始化时将其链接到您想要的 MKAnnotation。对不起。你应该可以在谷歌上搜索关于 MKAnnotationView 的教程,我就是这样开始的,我能找到很多例子。
    猜你喜欢
    • 2012-07-22
    • 1970-01-01
    • 1970-01-01
    • 2016-03-11
    • 1970-01-01
    • 2019-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多