加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

带有WKWebView查看器的简单OS X应用程序

发布时间:2020-12-14 04:36:34 所属栏目:百科 来源:网络整理
导读:我正在尝试使用新的WKWebView和 Swift语言使用Web查看器创建简单的OS X应用程序(而不是iOS).我希望利用WKWebView类的更快性能. 在项目AppDelegate.swift文件中,我有以下代码: import Cocoaimport WebKit@NSApplicationMainclass AppDelegate: NSObject,NSAp
我正在尝试使用新的WKWebView和 Swift语言使用Web查看器创建简单的OS X应用程序(而不是iOS).我希望利用WKWebView类的更快性能.

在项目AppDelegate.swift文件中,我有以下代码:

import Cocoa
import WebKit

@NSApplicationMain
class AppDelegate: NSObject,NSApplicationDelegate {

    @IBOutlet weak var window: NSWindow!
    @IBOutlet var containerView : NSView! = nil

    var webView: WKWebView?

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

}

在MainMenu.xib文件中,我向主窗口添加了一个Custom View对象,并将其链接到@IBOutlet var containerView.

我在最后两行代码中收到错误消息:

var req = NSURLRequest(URL:url)

‘AppDelegate. Type’ does not have a member named ‘url’

self.webView!.loadRequest(REQ)

Expected declaration

非常感激任何的帮助.

解决方法

我花了一段时间才弄明白.

import Cocoa
@NSApplicationMain
class AppDelegate: NSObject,NSApplicationDelegate {
    @IBOutlet weak var window: NSWindow!
    var viewController : ViewController!

    func applicationDidFinishLaunching(aNotification: NSNotification) {
        self.viewController = ViewController(nibName:"ViewController",bundle:nil)
        self.window.contentView = self.viewController!.view
        self.window.contentViewController = self.viewController!
        self.viewController!.view.frame = self.window.contentView.bounds;
    }

    ...
}

这基本上取代了我的NSWindow中的任何东西,并且我自己制作了视图和视图控制器.我对ViewController类的实现如下所示:

import Cocoa
import WebKit
class ViewController: NSViewController {
    var webView: WKWebView?

    override func loadView() {
        self.webView = WKWebView()
        self.view = self.webView!

        var url = NSURL(string:"http://www.google.com/")
        var req = NSURLRequest(URL: url!)
        self.webView!.loadRequest(req)
    } 
}

所以实际上我发生的是创建一个自定义视图控制器,将WKWebView设置为视图,然后将其设置和视图设置为NSWindow视图控制器和视图.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读