Приведенный ниже код отлично работает для отображения изображений из уже существующего массива "var files". Я хочу загрузить список URL-адресов изображений из другого URL-адреса, чтобы поместить в этот массив.
class ViewController: UIViewController {
@IBOutlet weak var fwdBtn: UIButton!
@IBOutlet weak var bkBtn: UIButton!
@IBOutlet weak var imageView: UIImageView!
var files = ["https://www.testsite.com/1.jpg", "https://www.testsite.com/2.jpg”,”https://www.testsite.com/3.jpg"]
var count = 0
//Foward Button
@IBAction func fwdBtn(_ sender: Any) {
if (count < (files.count - 1)) {
count = count + 1
imageView.image = UIImage(named: files[count])
}
}
//Back Button
@IBAction func bkBtn(_ sender: Any) {
if (count > 0) {
count = count - 1
imageView.image = UIImage(named: files[count])
}
}
override func viewDidLoad() {
imageView.image = UIImage(named: files[count])
}
Я пытался сделать следующее, чтобы загрузить изображения из URL, но это либо выдает ошибку ' nil ', либо ' Невозможно использовать элемент экземпляра в инициализаторе свойства; инициализаторы свойств запускаются до того, как станет доступным 'self' '
var files = [myurl()]
func myurl() {
let myURLString = "https://www.testsite.com/image_list.php"
guard let myURL = URL(string: myURLString) else {
print("Error: \(myURLString) doesn't seem to be a valid URL")
return
}
do {
let myHTMLString = try String(contentsOf: myURL)
let imagesOutput = myHTMLString
} catch let error {
print("Error: \(error)")
}
}
Выходной список URL-адресов изображения в файле image_list.php представляет собой простой текстовый разделенный запятыми список URL-адресов без какого-либо HTML-форматирования, например:
https://www.testsite.com/1.jpg,https://www.testsite.com/2.jpg,https://www.testsite.com/3.jpg
Я хочу добавить список URL-адресов изображений из другого URL-адреса в массив в части объявлений ViewController. Как правильно интегрировать это в мой код? Я предполагаю, что это не должно быть именно так, пока это работает. Спасибо!