2016-12-23 7 views
0

Я ищу, чтобы добиться эффекта, когда у вас есть ссылка на сайт и вы можете его просмотреть с помощью 3D Touch, например, в приложении Apple Notes.UIWebView не отображает содержимое при просмотре на UIButton с помощью 3D Touch

В моей раскадровке у меня есть UIButton (который открывает ссылку) в одном из моих UIViewControllers, и у меня есть еще один UIViewController настраиваемого типа WebViewController (идентификатор раскадровки: WebView), содержащий только UIWebView. Я реализовал 3D Touch на UIButton, и я могу отображать все, что захочу, в режиме просмотра, но мой UIWebView не отображает его содержимое, когда я показываю его в режиме просмотра. Я использовал функции UIWebViewDelegate, чтобы подтвердить, что UIWebView успешно загружает URL-адрес. Единственная проблема заключается в том, что она ничего не показывает в UIWebView, я просто получаю пустой UIWebView, когда я использую 3D-касание на UIButton.

Это код прятки реализации 3D штрихом в моем UIViewController:

func previewingContext(_: UIViewControllerPreviewing, viewControllerForLocation: CGPoint) -> UIViewController? { 
    let storyboard = UIStoryboard(name: "Main", bundle: nil) 
    let previewController = storyboard.instantiateViewController(withIdentifier: "WebView") as? WebViewController 
    previewController?.loadView() 
    previewController?.webView.loadRequest(URLRequest(url: URL(string: "https://google.com/")!)) 
    return previewController 
} 

я использовал следующие UIWebViewDelegate методы проверки, является ли UIWebView загрузки URL:

func webViewDidStartLoad(_ webView: UIWebView) { 
    print("Started loading") 
} 

func webViewDidFinishLoad(_ webView: UIWebView) { 
    print("Finished loading") 
} 

func webView(_ webView: UIWebView, didFailLoadWithError error: Error) { 
    print("WebView error: \(error)") 
} 

Те дайте мне следующий результат, поэтому я предполагаю, что адрес загружается штрафом:

Started loading 
Finished loading 

Как заставить UIWebView отображать загруженный URL-адрес в представлении peek?

ответ

0

У меня проблема решена, связавшись с Гектором из KrakenDev (все ему кредиты), который предложил мне перенести код загрузки для UIWebView на viewWillAppear() WebViewController. Сейчас все работает.

 Смежные вопросы

  • Нет связанных вопросов^_^