OSX应用程序没有故事板或xib文件使用Swift

OSX应用程序没有故事板或xib文件使用Swift,第1张

概述不幸的是,在互联网上没有发现任何有用的东西 – 我想知道,在 Swift中没有使用storyboard或XIB文件的情况下,我实际上必须输入什么代码才能初始化应用程序.我知道我必须有一个.swift文件叫main.但是我不知道该写什么(像我需要autoreleasepool或类似的东西).例如,我将如何初始化NSMenu,以及如何将NSViewController添加到活动窗口(iOS的类似的.r 不幸的是,在互联网上没有发现任何有用的东西 – 我想知道,在 Swift中没有使用storyboard或XIB文件的情况下,我实际上必须输入什么代码才能初始化应用程序.我知道我必须有一个.swift文件叫main.但是我不知道该写什么(像我需要autoreleasepool或类似的东西).例如,我将如何初始化NSMenu,以及如何将NSVIEwController添加到活动窗口(iOS的类似的.rootVIEwController没有帮助).感谢任何帮助;)

编辑:
我实际上不想在AppDelegate前面使用@NSApplicationMain.我宁愿知道究竟发生在那里,然后自己做.

如果您不想拥有@NSApplicationMain属性,请执行以下 *** 作:

>有一个文件main.swift
>添加以下顶级代码:

import Cocoalet delegate = AppDelegate() //alloc main app's delegate classNSApplication.sharedApplication().delegate = delegate //set as app's delegate// old versions:// NSApplicationMain(C_ARGC,C_ARGV)NSApplicationMain(Process.argc,Process.unsafeArgv);  //start of run loop

其余的应该在你的应用程序委托中.例如.:

import Cocoaclass AppDelegate: NSObject,NSApplicationDelegate {    var newWindow: NSWindow?    var controller: VIEwController?    func applicationDIDFinishLaunching(aNotification: NSNotification) {        newWindow = NSWindow(contentRect: NSMakeRect(10,10,300,300),styleMask: NSResizableWindowMask,backing: NSbackingStoreType.Buffered,defer: false)        controller = VIEwController()        let content = newWindow!.contentVIEw! as NSVIEw        let vIEw = controller!.vIEw        content.addSubvIEw(vIEw)        newWindow!.makeKeyAndOrderFront(nil)    }}

那么你有一个vIEwController

import Cocoaclass VIEwController : NSVIEwController {    overrIDe func loadVIEw() {        let vIEw = NSVIEw(frame: NSMakeRect(0,100,100))        vIEw.wantsLayer = true        vIEw.layer?.borderWIDth = 2        vIEw.layer?.bordercolor = NScolor.redcolor().CGcolor        self.vIEw = vIEw    }}
总结

以上是内存溢出为你收集整理的OSX应用程序没有故事板或xib文件使用Swift全部内容,希望文章能够帮你解决OSX应用程序没有故事板或xib文件使用Swift所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1027270.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存