gpt4 book ai didi

Swift MapKit - 向注释添加(额外)属性?

转载 作者:行者123 更新时间:2023-11-28 06:57:14 27 4
gpt4 key购买 nike

我做了this MapKit-教程

一切正常,但如何为我的 pin 添加额外的属性?

这是我的课车:

import Foundation
import MapKit

class Car: NSObject, MKAnnotation {

let title: String
let subtitle: String
let thirdAttribut: String
let coordinate: CLLocationCoordinate2D

init(title: String, subtitle: String, thirdAttribut: String, coordinate: CLLocationCoordinate2D) {
self.title = title
self.subtitle = subtitle
self.thirdAttribut = thirdAttribut
self.coordinate = coordinate

super.init()
}


var getTitle: String {
return title
}

var getSubtitle: String {
return subtitle
}

var getThirdAttribut: String {
return thirdAttribut
}

我想点击一个图钉并使用这个“thirdAttribut”。我的主类:

override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.

mapView.delegate = self
let car = Car(title: "Title", subtitle: "Subtitle", thirdAttribut: "ThirdAttribut", coordinate: CLLocationCoordinate2D(latitude: 50.906849, longitude: 7.524224) )
mapView.addAnnotation(car)

}


func mapView(mapView: MKMapView!, viewForAnnotation annotation: MKAnnotation!) -> MKAnnotationView! {
//some config stuff
}



func mapView(mapView: MKMapView!, didSelectAnnotationView view: MKAnnotationView!) {
print("Here Comes the Click")

print(view.annotation.title)
print(view.annotation.subtitle)
//view.annotation.thirdAttribut doesn't existis
//How get I my "thirdAttribut"-Attribut?

}

第三个属性不能出现在我的 View 中。它只包含一些用于逻辑运算的数据。

我希望你能理解我,英语不是我的母语。

如果您知道其他方法来编写我想要的代码,请告诉我。 :)

谢谢你!

最佳答案

注释 View 包含注释属性。要获得第三个属性,您需要将 MKAnnotation 转换为您创建的遵守 MKAnnotation 协议(protocol) Car 的类。

if let carAnnotation = view.annotation as? Car{
print(carAnnotation.thirdAttrib);
}

关于Swift MapKit - 向注释添加(额外)属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33133864/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com