Swift iOS应用程序从何处开始?

时间:2015-04-18 20:48:23

标签: ios swift main lifecycle

如果我在Xcode中创建一个Objective-C iOS应用程序,则会生成一个名为main.m的文件。该文件的内容如下所示:

的main.m

#import <UIKit/UIKit.h>
#import "AppDelegate.h"

int main(int argc, char * argv[]) {
    @autoreleasepool {
        return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
    }
}

这就是Objective-C iOS应用程序开始生效的地方。

重要的是,如果我想继承UIApplication(无论出于何种原因),那么 here 就是我去告诉我的应用程序用于应用程序类的类。同样,如果由于某种原因我想为我的应用使用AppDelegate以外的类名,我会在此处更改这些信息。

HOWEVER ,如果我在Xcode中创建Swift iOS应用程序,则不会生成此类文件(我已经能够找到)。我在哪里设置这些东西?

1 个答案:

答案 0 :(得分:7)

在Swift中,您可以在app委托类中使用@UIApplicationMain属性,它会自动为您调用UIApplicationMain()函数。

@UIApplicationMain
class YourAppDelegate: UIResponder, UIApplicationDelegate { ...

还有另一种选择:

  

如果不使用此属性,请提供带有main函数的main.swift文件,该函数调用UIApplicationMain函数。例如,如果您的应用使用UIApplication的自定义子类作为其主要类,请调用UIApplicationMain函数而不是使用此属性。


<强>参考文献: