_webView didFinish导航无效

时间:2019-05-02 23:21:04

标签: ios swift wkwebview

我正在尝试启用和禁用网络活动指示器,但是在页面加载后它不会调用didFinish导航功能。

我正在使用WKWebView。首先,我使用webView.load()加载了网址。然后,我调用了didFinish导航功能,但没有达到该功能。我已经尝试了所有其他帖子,但是它不起作用。在info.plist文件中,我添加了“应用程序传输安全设置”,并在其中添加了“允许任意加载”,“ NSAllowsArbitraryLoadsForMedia”,“允许在Web内容中任意加载”,并将其所有值设置为Boolean和YES。

override func viewDidLoad() {
        super.viewDidLoad()

        if !CheckInternet.Connection() {
            checkInternetConnection()
        }

        UIApplication.shared.isNetworkActivityIndicatorVisible = true
        webView.load(URLRequest(url: URL(string: "https://www.google.com")!))
    }

func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
        print("Loaded...")
        UIApplication.shared.isNetworkActivityIndicatorVisible = false
    }

以上代码不会显示“已加载...”。我的网络活动指示灯亮起,但是在网页成功加载后我需要将其停止。

1 个答案:

答案 0 :(得分:0)

在viewDidLoad中,您需要设置WEWebView的委托。

webView.navigationDelegate = self

您还可以通过导航到WKWebview的连接检查器,然后将委托拖放到BrowserViewController,在.xib /情节提要中设置委托。