我使用基于this tutorial的WebView创建了一个简单的应用程序。检测WebView加载完成
我想在加载页面时显示一个进度指示器,但方法didStartProvisionalLoadForFrame
和didFinishLoadForFrame
永远不会被调用。我究竟做错了什么?
ViewController.swift
import Cocoa
import WebKit
class ViewController: NSViewController {
@IBOutlet weak var webView: WebView!
@IBOutlet weak var webViewProgressIndicator: NSProgressIndicator!
let messengerUrl = "https://www.messenger.com/"
override func viewDidLoad() {
super.viewDidLoad()
self.webView.mainFrame.loadRequest(NSURLRequest(URL: NSURL(string: messengerUrl)!))
}
override var representedObject: AnyObject? {
didSet {
// Update the view, if already loaded.
}
}
func webView(sender: WebView!, didStartProvisionalLoadForFrame frame: WebFrame!)
{
self.webViewProgressIndicator.startAnimation(self)
}
func webView(sender: WebView!, didFinishLoadForFrame frame: WebFrame!)
{
self.webViewProgressIndicator.stopAnimation(self)
}
}
我使用的Xcode 7 Beta版和OS X 10.11 Beta版。
您的解决方案不起作用。也许这不重要,但我没有使用'UIWebView',而是'WebView'。 – fragon
你让你的'controller'符合'webView'委托吗? –