Ноль Ошибка для UIWebView ТОЛЬКО когда loadRequest вне viewDidLoad - PullRequest
0 голосов
/ 25 апреля 2019

Я получаю следующую ошибку

"Неожиданно обнаружено nil при развертывании необязательного значения"

при попытке загрузить файл PDF внутри веб-представленияэто представлено через контейнерное представление.

У меня UIWebView правильно подключен в IB, и я запускаю следующий код на родительском VC, чтобы сообщить представлению контейнера с WebView о загрузке файла PDF.

func loadThePDF () {
 if let pdf = Bundle.main.url(forResource: "Clothing", withExtension: "pdf", subdirectory: nil, localization: nil)  {
            let req = NSURLRequest(url: pdf)
            catalogWebView.loadRequest(req as URLRequest)
 }
}

Странная вещьздесь, это то, что если я помещаю код загрузки PDF в ViewDidLoad, он работает нормально.

Однако попытка сказать ему, чтобы он загружал PDF-файл за пределами этого, вызывает эту ошибку, которую можно устранить, только поставив символ?в каталоге WebView?но тогда PDF просто не загружается ...

1 Ответ

0 голосов
/ 05 мая 2019

Я решил эту проблему, изменив способ связи с контроллером представления Child / Container.По какой-то причине это решило проблему с помощью этого:

 override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
        if segue.identifier == "pdfView" {
            pdfVC = segue.destination as? PDFViewController
        }
    }

Не совсем уверен, почему, но я предполагаю, что это как-то связано с тем, как ViewController связывается, когда я говорю ему загрузить новый PDFв веб-представлении в представлении контейнера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...