无法从URL获取图像以在UIImage中快速更新

时间:2019-02-04 05:57:06

标签: ios json swift uitableview asynchronous

我正在尝试使用来自Web api的图像更新tableview单元。 按照下面的链接,我尝试了一下,但是即使图像存在,它也没有给出图像。

Update table cell image asynchronously

下面是我的代码,请让我知道我在哪里缺少它。

DispatchQueue.global(qos: .background).async { [weak self] () -> Void in
            if let url = NSURL(string: "https://myantion.eu/data/sol.svg"){
                    if let data = NSData(contentsOf: url as URL) {
                        let imageAux = UIImage(data: data as Data)

                        DispatchQueue.main.async {
                                cell.imgFlag.image = imageAux
                        }
                    }
                }
        }

即使图像存在,imageAux也给我零值

按照以下建议,即使尝试使用UIWebView仍然没有结果,下面是代码:

> let fileURL:URL = URL(fileURLWithPath:
> "https://myantion.eu/data/sol.svg")
>             let req = URLRequest(url: fileURL)
>             DispatchQueue.main.async {
>                                             cell.webVw.loadRequest(req)
>                                        }
>             
>            }

2 个答案:

答案 0 :(得分:0)

我尝试按照以下参考链接中的说明安装SVGKit,它对我有用。 How to display .svg image using swift

6.4.0

在您现有的代码中,只需添加一行代码: 让anSVGImage:SVGKImage = SVGKImage(data:data as Data)到我的工作。

答案 1 :(得分:0)

我尝试使用WKWebView,对我来说,以下代码有效:

if let svgString =
  try ? String(contentsOf: URL(string: "https://myantion.eu/data/sol.svg") !) {
    self.wkWebView.loadHTMLString(svgString, baseURL: URL(string: "https://myantion.eu/data/sol.svg") !)
  }