Primero Si la imagen la vamos a cargar desde una url que no sea segura debemos modificar nuestro Info.plist para que nos deje cargar la imagen entonces en nuestro archivo Info.plist agregamos esto:
[xml]
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
[/xml]
Ahora crea la siguiente funcion en algun controller o bien en una clase de utilidad que tengas, o bien se puede hacer como una extension de la Clase UIImageView, como se te antoje igual pondre los tres ejemplos que son casi iguales:
[c]
func downloadImage(_ uri : String, inView: UIImageView){
let url = URL(string: uri)
let task = URLSession.shared.dataTask(with: url!) {responseData,response,error in
if error == nil{
if let data = responseData {
DispatchQueue.main.async {
inView.image = UIImage(data: data)
}
}else {
print("no data")
}
}else{
print(error)
}
}
task.resume()
}
[/c]
Con esta funcion lo metemos dentro de un Controller y bueno nuestro controller quedaria asi:
[c]
class ViewController: UIViewController {
@IBOutlet weak var imageView: UIImageView!
override func viewDidLoad() {
super.viewDidLoad()
self.downloadImage("https://dummyimage.com/300×300/0F0F0F/00FF00.png&text=Loaded+Image!", inView: imageView)
}
func downloadImage(_ uri : String, inView: UIImageView){
let url = URL(string: uri)
let task = URLSession.shared.dataTask(with: url!) {responseData,response,error in
if error == nil{
if let data = responseData {
DispatchQueue.main.async {
inView.image = UIImage(data: data)
}
}else {
print("no data")
}
}else{
print(error)
}
}
task.resume()
}
}
[/c]
Nos quedaria asi entonces en el emulador:
Aqui les dejo el link con el codigo:
Bitacoras.com
noviembre 29, 2016 at 6:40 pmInformación Bitacoras.com
Valora en Bitacoras.com: Primero Si la imagen la vamos a cargar desde una url que no sea segura debemos modificar nuestro Info.plist para que nos deje cargar la imagen entonces en nuestro archivo Info.plist agregamos esto: NSAppTransportSecurity NSAl..…