lazy var progressView : UIProgressView = {
let progressView = UIProgressView.init(frame: CGRect(x: 0, y: 0, width: SCREEN_WHIDTH(), height: 0))
progressView.tintColor = mainBodyColor
progressView.trackTintColor = UIColor.white
self.view.addSubview(progressView)
return progressView
}()
override func observeValue(forKeyPath keyPath: String?, of object: Any?, change: [NSKeyValueChangeKey : Any]?, context: UnsafeMutableRawPointer?) {
let objectView : WKWebView = object as! WKWebView
if objectView == webView && keyPath == "estimatedProgress" {
let newprogress : NSNumber = change![NSKeyValueChangeKey.newKey] as! NSNumber
if newprogress == 1 {
progressView.isHidden = true
progressView.setProgress(0, animated: false)
} else {
progressView.isHidden = false
progressView.setProgress(Float(truncating: newprogress), animated: true)
}
}
}
在WKWebView加载时,添加
webView.load(urlRequest as URLRequest)
webView.addObserver(self, forKeyPath: "estimatedProgress", options: .new, context: nil)
网友评论