私は迅速に新しいです。誰が助けることができますか?私は3つのリンクを持つ配列を持っています。この配列から1つのリンクを取り、UIImageViewで次に2番目のリンクを表示し、次に3番目に表示できますか?私は1つのリンクで作るが、どのように私が配列で作ることができるか理解していない。 Thnx。リンクから配列の値を取得するにはどうすればよいですか?
class ViewController: UIViewController {
@IBOutlet weak var imgView: UIImageView!
override func viewDidLoad() {
super.viewDidLoad()
var image = UIImage()
var imageData: Data?
let links = ["http://s.ill.in.ua/i/gallery/950x0/2694/146192.jpg","http://s.ill.in.ua/i/gallery/950x0/2694/146190.jpg","http://s.ill.in.ua/i/gallery/950x0/2694/146202.jpg"]
let url = URL(string: links[0])
do {
imageData = try Data(contentsOf: url!)
}
catch {
print("error")
}
if let value = imageData {
image = UIImage(data:value)!
imgView.image = image
}
}
}
イメージビューに3つのリンクを1つずつ表示すると、最後のものだけが表示され、コンピュータが速すぎます。 Btw:**決して**リモートの 'URL'からデータをロードする' Data(contentsOf')のような同期メソッドを使用し、 'do-catch'式の後に' do'ブロックで失敗するデータを使用しないでください。 – vadian
私はそれを理解していますが、おそらくDispatchQueueを遅延のために使用することができます –
このリンクを使用して、簡単にサーバーからイメージをロードできます:https://stackoverflow.com/a/37019507/ 3400991 –