Code: Select all
import UIKit
class DetailsViewController: UIViewController {
@IBOutlet weak var alpha3CodeLbl: UILabel!
@IBOutlet weak var regionLbl: UILabel!
@IBOutlet weak var flagImage: UIImageView!
var countrie:jsonStruct?
override func viewDidLoad() {
super.viewDidLoad()
alpha3CodeLbl.text = countrie?.alpha3Code
regionLbl.text = countrie?.region
let urlString = "http://restcountries.eu/rest/v2/all" + (countrie?.flag)!
flagImage.downloadedFrom(url: url!)
}
}
extension UIImageView {
func downloadedFrom(url: URL, contentMode mode: UIViewContentMode = .scaleAspectFit) {
contentMode = mode
URLSession.shared.dataTask(with: url) { data, response, error in
guard
let httpURLResponse = response as? HTTPURLResponse, httpURLResponse.statusCode == 200,
let mimeType = response?.mimeType, mimeType.hasPrefix("image"),
let data = data, error == nil,
let image = UIImage(data: data)
else { return }
DispatchQueue.main.async() {
self.image = image
}
}.resume()
}
func downloadedFrom(link: String, contentMode mode: UIViewContentMode = .scaleAspectFit) {
guard let url = URL(string: link) else { return }
downloadedFrom(url: url, contentMode: mode)
}
}
Es liegt kein Fehler vor, aber das Bild wird nicht angezeigt. Aber es gibt kein Ergebnis, wenn jemand hier dieses Problem beheben kann.
Bitte nicht, dass alles in Ordnung ist und versuchen Sie nicht, das Bild auf zu viele Arten zu erhalten, aber immer noch kein Ergebnis.
Außerdem versuche ich das
Code: Select all
let urlString = "http[enter image description
here][1]://restcountries.eu" + (countrie?.flag)!