繁体   English   中英

无法将网页添加到UIViewController(Swift)

[英]Trouble adding webpage to UIViewController (Swift)

我正在尝试使网页显示在我的快速应用程序中。 我已经添加了WebView并在controller类中编写了以下代码,但是当我运行我的应用程序时,只有白屏。 我想念什么吗?

class WebViewController: UIViewController {


@IBOutlet weak var webView: UIWebView!
override func viewDidLoad() {
    super.viewDidLoad()


    let WebView = UIWebView(frame: view.bounds)

    let url = NSURL(string: "http://www.google.com")
    let request = NSURLRequest(URL:url!)
    WebView.loadRequest(request)
    view.addSubview(WebView)


}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()

    }

}

viewDidLayoutSubviews运行代码。 您正在将WebView的框架设置为视图的边界。 视图的框架尚未完全加载。

没关系,我是个白痴,忘了http中的s,谢谢。

您需要告诉webView谁是它的委托人,仅绑定出口是不够的。

在viewDidLoad中添加以下内容:

self.webView.delegate = self

然后,您需要遵循UIWebViewDelegate(您已经在做,但是我建议您改为扩展视图控制器):

extension WebViewController: UIWebViewDelegate {
    func webViewDidStartLoad(_ webView: UIWebView) {
        print("Loading")
    }

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

最后但并非最不重要的一点是,您需要通过添加传输安全性来允许您的应用程序加载外部URL,建议您查看此文章

请注意,我使用的是Swift 3,您可能需要进行一些更改。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM