微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

如果我在 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(无论出于何种原因),那么我可以在这里告诉我的应用程序将哪个类用于应用程序类.同样,如果由于某种原因我想为我的应用程序使用AppDelegate以外的类名,我会在这里更改这些信息.

但是,如果我在Xcode中创建一个Swift iOS应用程序,则不会生成这样的文件(我已经能够找到).我在哪里设置这些东西?

解决方法

在Swift中,您可以在app delegate类上使用@UIApplicationMain属性,它将自动为您调用UIApplicationMain()函数.

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

还有另一种选择:

If you do not use this attribute,supply a main.swift file with a main function that calls the UIApplicationMain function. For example,if your app uses a custom subclass of UIApplication as its principal class,call the UIApplicationMain function instead of using this attribute.

参考文献:

> The Swift Programming Language: Attributes
> What does “@UIApplicationMain” mean?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐