gpt4 book ai didi

swift - 根据注释的属性设置注释的字形文本

转载 作者:行者123 更新时间:2023-11-28 05:52:19 34 4
gpt4 key购买 nike

我遇到了自定义注释显示不正确的问题。在我的代码中,我检查当前注释是否针对具有给定唯一标识符的站。如果是这样,我自定义它的属性。

StationAnnotationView.swift

class StationAnnotationView: MKMarkerAnnotationView {

override var annotation: MKAnnotation? {
willSet {
guard let station = newValue as? Station else { return }

clusteringIdentifier = nil
displayPriority = .required

if (station.id == "26") {
glyphText = "p"
markerTintColor = UIColor(named: "Blue")
}
}
}

起初,我的 mapView 正确显示注释(即,更改唯一具有 station.id == 26 的站点的颜色和字形文本),但是在平移之后缩放一段时间后,我的自定义格式开始应用于其他注释(这不应该发生,因为任何给定的 station.id 都只有一个站点)。我怀疑这是由于 AnnotationView 重用了注释。我怎样才能防止这种情况发生?

最佳答案

正如您所说,这是由于 AnnotationView 重用了注释。试试下面的代码:

    if (station.id == "26") {
glyphText = "p"
markerTintColor = UIColor(named: "Blue")
} else {
glyphText = // Default text
markerTintColor = // Default color
}

关于swift - 根据注释的属性设置注释的字形文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52489543/

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