私は、Webサイトへのリンクがある場所で効果を得るために、3D Touchを使用してプレビューすることができます。3D Touchを使用してUIButtonで覗くとUIWebViewにコンテンツが表示されない
私のストーリーボードでは、私のUIViewControllerの1つにUIButton(リンクを開きます)があり、UIWebViewだけを含むカスタムタイプのWebViewController(storyboard id:WebView)の別のUIViewControllerがあります。私はUIButtonで3D Touchを実装しました。私は覗き見に必要なものを表示できますが、私のUIWebViewは、覗き見で表示すると内容が表示されません。 UIWebViewDelegate関数を使用して、UIWebViewがURLを正常にロードしていることを確認しました。唯一の問題は、UIWebViewに何も表示されないことです。UIButtonで3Dタッチを使用すると空白のUIWebViewが表示されます。
これは私のUIViewControllerで3DタッチPEEKの実装のためのコードです:
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
}
私はのUIWebViewのURLをロードしているかどうかを確認するには、次のUIWebViewDelegateのメソッドを使用しています
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)")
}
もの私に次の出力を与えてください。URLが正常に読み込まれていると仮定しています。
読み込んだURLをpeekビューに表示するには、どのようにUIWebViewを取得しますか?