gpt4 book ai didi

ios - 通过 URL 下载 GMSMarker 图标

转载 作者:可可西里 更新时间:2023-11-01 04:43:59 25 4
gpt4 key购买 nike

Google Maps SDK 中将图标设置为 GMSMarker 需要 UIImage,但目前我的要求是从特定的 下载它网址

问题

问题是有时只显示最后一项。这是关于我如何创建标记的代码(在 Swift 中更新)

func createMarkers() {
mapView.clear()

let mapCoordinates: [CLLocationCoordinate2D] = coordinates()
let iconURLs: [URL] = imageURLs()

var marker = GMSMarker()
for i in 0..<mapCoordinates.count {
let imageURL = iconURLs[i]

marker = GMSMarker()
marker.position = mapCoordinates[i]
marker.map = mapView

downloadImage(from: imageURL) { image in
marker.icon = image
}
}
}

// It is a helper function calling `SDWebImage` which caches the `UIImage` based on its `URL` string
func downloadImage(from url: URL, completion: @escaping (UIImage) -> Void)

根据上面提供的代码,我在第一次加载数据时遇到了问题,因为图钉显示在 map 上但没有图像。如果我在一段时间后再次调用 createMarkers(),图标就会正确加载。

我不知道为什么会这样,有什么建议或提示可以解决这个问题吗?

最佳答案

只需使用 SDWebimage 和 .iconView 而不是 .icon

let imageView = UIImageView(image: pinImage)
imageView.sd_setImage(with: URL(string: "https://pbs.twimg.com/profile_images/469017630796296193/R-bEN4UP.png"), placeholderImage: pinImage)
marker.iconView = imageView

关于ios - 通过 URL 下载 GMSMarker 图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24182828/

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