Я ищу, чтобы добиться эффекта, когда у вас есть ссылка на сайт и вы можете его просмотреть с помощью 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?