我开始使用Swift并拥有一个非常基本的OSX应用程序。我使用故事板添加视图,并在其中添加了一个webview。
但是,当鼠标进入该视图时,我似乎无法运行某个功能。
这是我的视图控制器。在底部,你可以看到我有一个功能,当鼠标进入视图时设置一些窗口属性。
import Cocoa
import WebKit
class ViewController: NSViewController {
@IBOutlet weak var webView: WebView!
@IBOutlet weak var progressIndicator: NSProgressIndicator!
override func viewDidAppear() {
super.viewDidAppear()
let urlString = "http://google.com"
self.webView.mainFrame.loadRequest(NSURLRequest(URL: NSURL(string: urlString)!))
}
override var representedObject: AnyObject? {
didSet {
// Update the view, if already loaded.
}
}
override func webView(sender: WebView!, didStartProvisionalLoadForFrame frame: WebFrame!) {
self.progressIndicator.startAnimation(self)
}
override func webView(sender: WebView!, didFinishLoadForFrame frame: WebFrame!) {
self.progressIndicator.stopAnimation(self)
}
override func mouseEntered(event: NSEvent) {
self.view.window?.titleVisibility = .Hidden
self.view.window?.titlebarAppearsTransparent = true
self.view.window?.styleMask |= NSFullSizeContentViewWindowMask
}
}
非常感谢任何帮助,谢谢。
答案 0 :(得分:1)
要在NSViewController中使用NSResponder方法(如mouseEntered:,mouseDown:,mouseUp:等),您应该为此初始化跟踪区域。
查看“Using Tracking-Area Objects”Apple指南。