_webView didFinish 导航不工作

_webView didFinish Navigation is not Working

我正在尝试启用和禁用网络 activity 指示器,但在页面加载后它没有调用 didFinish 导航功能。

我正在使用 WKWebView。首先,我使用 webView.load() 加载了 url。然后我调用了 didFinish Navigation 函数,但它没有到达该函数。我已经尝试了所有其他帖子,但它不起作用。在 info.plist 文件中,我添加了 App Transport Security Setting,并在其中添加了 Allow Arbitrary Loads、NSAllowsArbitraryLoadsForMedia、Allow Arbitrary Loads in Web Content,并将其所有值设置为布尔值和 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
    }

以上代码不打印 "Loaded..."。我的网络 activity 指示灯亮起,但我需要在网页加载成功后停止它。

viewDidLoad中需要设置WEWebView的delegate

webView.navigationDelegate = self

您还可以通过导航到 WKWebview 的连接检查器然后将委托拖放到 BrowserViewController 来在 .xib/ 故事板中设置委托。