将url转换为UIImage Swift3

use*_*093 3 url uiimage ios swift3

我尝试使用以下代码将url转换为UIImage:

            let url = URL(string: "http://www.apple.com/euro/ios/ios8/a/generic/images/og.png")
            let sessionTask = URLSession.shared
            let request = URLRequest(url: url!)
            let task = sessionTask.dataTask(with: request, completionHandler: {(data: Data?, response: URLResponse?, error: Error?) -> Void in
                if (error == nil) {
                    let image: UIImage = UIImage(data: data!)!

                }

            })
            task.resume()
Run Code Online (Sandbox Code Playgroud)

但它对我不起作用,if-loop没有被遵守.

KKR*_*cks 31

试试这个

    let url = URL(string:"http://www.apple.com/euro/ios/ios8/a/generic/images/og.png")
    if let data = try? Data(contentsOf: url!)
    {
      let image: UIImage = UIImage(data: data)
    }
Run Code Online (Sandbox Code Playgroud)

使用背景线程

 DispatchQueue.global(qos: .background).async {
        do
         {
              let data = try Data.init(contentsOf: URL.init(string:"url")!)
               DispatchQueue.main.async {
                  let image: UIImage = UIImage(data: data)
               }
         }
        catch {
               // error
              }
 }
Run Code Online (Sandbox Code Playgroud)