Swift AppDelegate如何知道要显示的视图?
我不熟悉Xcode和Swift GUI编程。 当我在Xcode(MacOs游戏项目)中启动一个新项目时,它会创建一个启动Hello World程序。默认的AppDelgate.swift代码如下所示。当我运行它并显示“Hello World”时,它就会工作。我知道这段代码是代码执行的“主要”起点,尽管我找不到@NSApplicationMain属性的官方文档 我的问题是,这段代码如何知道在ViewController.swift文件中显示视图?AppDelegate.swift代码基本上为空,没有实际代码。它如何知道要显示的ViewController?它怎么知道要做什么Swift AppDelegate如何知道要显示的视图?,swift,xcode,Swift,Xcode,我不熟悉Xcode和Swift GUI编程。 当我在Xcode(MacOs游戏项目)中启动一个新项目时,它会创建一个启动Hello World程序。默认的AppDelgate.swift代码如下所示。当我运行它并显示“Hello World”时,它就会工作。我知道这段代码是代码执行的“主要”起点,尽管我找不到@NSApplicationMain属性的官方文档 我的问题是,这段代码如何知道在ViewController.swift文件中显示视图?AppDelegate.swift代码基本上为空,没
import Cocoa
@NSApplicationMain
class AppDelegate: NSObject, NSApplicationDelegate {
func applicationDidFinishLaunching(_ aNotification: Notification) {
// Insert code here to initialize your application
}
func applicationWillTerminate(_ aNotification: Notification) {
// Insert code here to tear down your application
}
}
这是通过
Info.plist
确定的。检查目标的设置,您会发现一个名为“主界面”的条目,它指向故事板或nib文件。这是通过Info.plist
确定的。检查目标的设置,你会发现一个名为“主界面”的条目它指向情节提要或nib文件。从项目导航器
中选择项目文件,您将能够看到主界面
值设置为Main
,这意味着Main。情节提要
文件将用作主界面。你可以删除它,你会发现应用程序不再显示视图控制器
您可以删除项目导航器中提供的主界面
,并在类似这样的Cocoa应用程序上覆盖AppDelegate中的contentViewController
@NSApplicationMain
class AppDelegate: NSObject, NSApplicationDelegate {
var window: NSWindow?
func applicationDidFinishLaunching(_ aNotification: Notification) {
window = NSWindow(contentViewController: ViewController())
window?.makeKeyAndOrderFront(nil)
}
}
从项目导航器
中选择项目文件,您将能够看到主界面
值设置为Main
,这意味着Main。情节提要
文件将用作主界面。你可以删除它,你会发现应用程序不再显示视图控制器
您可以删除项目导航器中提供的主界面
,并在类似这样的Cocoa应用程序上覆盖AppDelegate中的contentViewController
@NSApplicationMain
class AppDelegate: NSObject, NSApplicationDelegate {
var window: NSWindow?
func applicationDidFinishLaunching(_ aNotification: Notification) {
window = NSWindow(contentViewController: ViewController())
window?.makeKeyAndOrderFront(nil)
}
}
感谢提供有关如何使用(Swift)源代码显式调用窗口的额外信息。感谢提供有关如何使用(Swift)源代码显式调用窗口的额外信息。