Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Swift为MacOS打开带有特定url的webview窗口_Swift_Xcode_Macos - Fatal编程技术网

如何使用Swift为MacOS打开带有特定url的webview窗口

如何使用Swift为MacOS打开带有特定url的webview窗口,swift,xcode,macos,Swift,Xcode,Macos,我一直在尝试使用url(www.google.com)获取网络视图,但运气不好,而且在将我的网络视图与情节提要上的视图控制器链接时遇到问题,因此将共享代码,因此请帮助我完成此任务 import Cocoa import WebKit class ViewController: NSViewController { @IBOutlet weak var webView: WebView! //let webViewController = WebViewController(

我一直在尝试使用url(www.google.com)获取网络视图,但运气不好,而且在将我的网络视图与情节提要上的视图控制器链接时遇到问题,因此将共享代码,因此请帮助我完成此任务

import Cocoa
import WebKit

class ViewController: NSViewController {

    @IBOutlet weak var webView: WebView!

    //let webViewController = WebViewController()


    override func viewDidLoad() {
        super.viewDidLoad()

        //let url = "http:www.google.com"
        //self.webView.mainFrame.loadRequest(NSURLRequest(URL: NSURL(string: url)! as URL))

        let url = NSURL (string: "http://www.google.com")

        let requestObj = NSURLRequest(url: url! as URL)

        webView.mainFrame.load(requestObj as URLRequest)

        /*
        //Open in browser
        if let url = URL(string: "https://www.google.com"), NSWorkspace.shared().open(url) {
            print("default browser was successfully opened")
        }
        */

    }

    override var representedObject: Any? {
        didSet {
            // Update the view, if already loaded.
        }
    }

}

您需要设置PolicyDelegate并重写方法委托

override func viewDidLoad() {
        super.viewDidLoad()

        webView.policyDelegate = self

        webView.mainFrame.loadRequest(NSURLRequest(URL: YOUR_URL_OBJECT))

    }
委托方法

webView:DecisionPolicyFornewWindowAction:request:newFrameName:decisionListener: webView:DecisionPolicyFornavigationAction:request:frame:decisionListener: