从swift4中的URL在mapInfo寡妇上加载图像时出现问题

时间:2018-12-25 11:25:25

标签: swift4 google-maps-sdk-ios

我正在从url将图像加载到google map信息窗口中,当我在主线程中加载图像时,它会显示但会阻止UI,并且当我尝试加载异步时,一旦显示窗口,它现在就会显示。

这是代码。

  func mapView(_ mapView: GMSMapView, markerInfoWindow marker: GMSMarker) -> UIView? {

        let index = marker.iconView?.tag ?? 0
        let place = self.arryPlaces[index]

        let customMarker:PlaceInfoWindow = PlaceInfoWindow.instanceFromNib()

        customMarker.lblTitle.text = place.title
        customMarker.lblAddress.text = place.address


        DispatchQueue.global(qos: .background).async {

        if let url = URL(string: place.thumb ?? "")
        {
            do {
                let imageData = try Data(contentsOf: url)
                DispatchQueue.main.async {
                  customMarker.imgPlaceIcon.image = UIImage(data: imageData)
                }
            } catch {
                print("Unable to load data: \(error)")
            }
        }


        }
       )

        return customMarker as! UIView
    }

我在这里做错了什么,我正在为Google地图标记创建自定义信息窗口。 请帮助

0 个答案:

没有答案