xCode 如何决定从哪个文件开始执行代码?
How does xCode decide in which file to begin code execution?
我正在使用 xCode 6 在 Swift 中编写一个简单的游戏。我在项目中有各种文件。 xCode 如何知道在执行代码时从哪里开始?在我看来,它会自动从一个文件开始,根据各种教程,我称之为 "GameViewController.swift." 但它如何决定首先使用该文件?它会扫描 UIViewController 对象的源文件并从那里开始吗?
为了让您了解 Apple 架构,这里有一个 Cocoa 应用程序示例,它也适用于 iOS Objective-C:
每个应用程序都从 main 开始,但开发人员入口点通常是 AppDelegate。这也适用于 Swift,即使 main 已从应用程序生命周期中消失.请记住,main 的存在只是为了启动应用程序或进行一些小的调整。
如果您正在使用 Storyboards,您将能够从那里设置应用程序的启动屏幕,相反,如果一切都在代码中完成 AppDelegate此时将负责:
func application(application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
如果您使用故事板,则您的目标上有一个名为 "Main Interface" 的设置。这提供了一个下拉列表,您可以在其中 select 故事板文件。即 Main.storyboard。此设置将写入将在启动时加载的 Info.plist 文件。
在这个文件中,一个视图控制器被设置为初始视图控制器,并且将被首先加载。
对于 iOS,Swift 查找具有 @UIApplicationMain
属性的 class,并将其用作应用程序的委托。
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
...
}
使用该属性等同于调用 UIApplicationMain
函数并将 class 的名称作为委托 class 的名称传递。这反过来将处理加载您的默认故事板并加载其初始视图控制器。
如果未找到 @UIApplicationMain
,Swift 将查找名为 main.swift
的文件并在其中查找名为 main
的函数并调用它。
我正在使用 xCode 6 在 Swift 中编写一个简单的游戏。我在项目中有各种文件。 xCode 如何知道在执行代码时从哪里开始?在我看来,它会自动从一个文件开始,根据各种教程,我称之为 "GameViewController.swift." 但它如何决定首先使用该文件?它会扫描 UIViewController 对象的源文件并从那里开始吗?
为了让您了解 Apple 架构,这里有一个 Cocoa 应用程序示例,它也适用于 iOS Objective-C:
每个应用程序都从 main 开始,但开发人员入口点通常是 AppDelegate。这也适用于 Swift,即使 main 已从应用程序生命周期中消失.请记住,main 的存在只是为了启动应用程序或进行一些小的调整。
如果您正在使用 Storyboards,您将能够从那里设置应用程序的启动屏幕,相反,如果一切都在代码中完成 AppDelegate此时将负责:
func application(application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
如果您使用故事板,则您的目标上有一个名为 "Main Interface" 的设置。这提供了一个下拉列表,您可以在其中 select 故事板文件。即 Main.storyboard。此设置将写入将在启动时加载的 Info.plist 文件。
在这个文件中,一个视图控制器被设置为初始视图控制器,并且将被首先加载。
对于 iOS,Swift 查找具有 @UIApplicationMain
属性的 class,并将其用作应用程序的委托。
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
...
}
使用该属性等同于调用 UIApplicationMain
函数并将 class 的名称作为委托 class 的名称传递。这反过来将处理加载您的默认故事板并加载其初始视图控制器。
如果未找到 @UIApplicationMain
,Swift 将查找名为 main.swift
的文件并在其中查找名为 main
的函数并调用它。