Показать URL-изображение во втором ВК с большим качеством и большим размером

#ios #swift #url

Вопрос:

Этот код находится в контроллере FirstView —

 func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
        
        print("User tapped on image (indexPath.row)")
        
        let myImageViewPage: MyImageViewController = self.storyboard?.instantiateViewController(withIdentifier: "MyImageViewController") as! MyImageViewController
        
        myImageViewPage.selectedImage = self.results[indexPath.row].urls.regular 
        
        self.navigationController?.pushViewController(myImageViewPage, animated: true)
    }
 

VC принимает изображения из results массива

Результаты-это массив Result структуры, который является

 struct Result: Codable {
    let id: String
    let urls: URLS
}

struct URLS: Codable {
    let regular: String 
}

 

Контроллер Второго Вида
Это работает аналогичным образом

 class MyImageViewController: UIViewController {

    @IBOutlet weak var myImageView: UIImageView!
    
    var selectedImage: String!

    override func viewDidLoad() {
        super.viewDidLoad()

        // Download image in the MyImageViewController
        
        guard let url = URL(string: self.selectedImage) else { return  }
        
        downloadImage(from: url)
    }
    
    
    override func viewWillAppear(_ animated: Bool) {
        super.viewWillAppear(animated)
        
        guard let url = URL(string: self.selectedImage) else {
            return
        }
        
        let task = URLSession.shared.dataTask(with: url) { data, _, error in
            guard let data = data , error == nil else {
                return
            }
            DispatchQueue.main.async {
                let image = UIImage(data: data)
                self.myImageView.image = image
            }
            
        }
       task.resume()
    }
 

В чем может быть проблема, из-за которой изображение большего размера не открывается в SecondVC?

Я искал везде и не мог найти из-за изображений Url, которые берут изображения из Интернета.

Заранее спасибо

Комментарии:

1. Помогите себе в выяснении разницы между viewDidLoad и viewWillAppear .

2. Почему вы ожидаете, что он откроет изображение большего размера? Больше ли загруженный файл? У вас есть другой размер UIImageView? Есть ли у вас какие-либо ошибки? И если да, то каковы они? Здесь недостаточно информации о том, что загружается или как оно отображается, чтобы мы могли вам помочь.

3. @flanker На самом деле я не ошибся и просто посмотрел учебник по YouTube, чтобы показать его на новом экране, а также применил его в своем сценарии, но не смог мне помочь

4. @ElTomato Во втором контроллере представления?

5. Если бы вы знали цель viewDidLoad в целом, вы бы заметили основную, но важную ошибку, которую вы совершаете в любом контроллере представления.