我正在使用PKHUD生成一个微调器来加载,以便用户知道应用程序正常工作而不是仅仅是冻结。
我必须加载其他网页作为应用功能的一部分。
最好在加载网页的过程中一直使用微调器。
目前我的微调器工作正常,但是当实际webview加载时(因此当网站开始加载时)它就会消失 - 我希望在网站完成加载时发生这种情况。
这是我的代码:
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
HUD.show(.labeledProgress(title: "Loading Webview", subtitle: nil))
self.navigationController?.setToolbarHidden(true, animated: true)
userInfoUpdater.startPolling(closure: self.userUpdated(user:))
}
func webViewDidFinishLoad(webView : UIWebView) {
HUD.hide()
}
那么我需要将HUD.hide()放入哪个事件?我对本机iOS开发相对较新,所以我不确定每个潜在的事件是什么。
答案 0 :(得分:0)
func webViewDidFinishLoad(webView : UIWebView) {
//Check here if still webview is loding the content
if webView.isLoading {
return
}
//executes after page finished loading
NSLog(@"WebView loading finished");
HUD.hide()
}
webViewDidFinishLoad会多次触发,首先是渲染第一帧,依此类推。页面加载完成后,webView.isLoading
将变为false。