我只具有基本的Cocoa应用程序WebView
在其窗口。 所述WebKit.framework
参考被加入到的Xcode 6的β6项目在OS X 10.9(小牛)。 我想知道什么时候WebView
完成加载的页面。 所以,我创建了一个WebViewControllerDelegate
类继承WebFrameLoadDelegate
。 这已经是哪里出现问题开始的地方:Xcode的告诉我关于Use of undeclared type 'WebFrameLoadDelegate'
。 有关堆栈溢出了这个问题 ,它不应该。 就像已经提到的, WebKit.framework
由项目和引用WebKit
在斯威夫特类文件导入模块。 我也看到了WebFrameLoadDelegate.h
在Xcode中的左侧栏中的“头文件”文件夹,在下方WebKit.framework
。
所有罪恶的根源是线11
在文件TestWebView/WebViewControllerDelegate.swift
(I忘了删除我省略这里的评论),类声明和协议参考。
import WebKit
class WebViewControllerDelegate: WebFrameLoadDelegate {
func didFinishLoadForFrame() {
NSLog("didFinishLoadForFrame()")
}
}
在AppDelegate
,其完成所有设置:
import Cocoa
import WebKit
class AppDelegate: NSObject, NSApplicationDelegate {
@IBOutlet weak var window: NSWindow!
@IBOutlet weak var webView: WebView!
@IBOutlet weak var webViewControllerDelegate: WebViewControllerDelegate!
func applicationDidFinishLaunching(aNotification: NSNotification?) {
self.webView.frameLoadDelegate = self.webViewControllerDelegate
self.webView.mainFrame.loadRequest(NSURLRequest(URL: NSURL(string: "https://stackoverflow.com/")))
}
func applicationWillTerminate(aNotification: NSNotification?) {}
}
欲了解更多信息,请看看我的代码我的公共仓库 ,我对这个问题的产生。