我刚刚创建了我的第一个Swift项目,在AppDelegate.swift中有一个类上面的一行声明为什么它在这里?
... import UIKit import CoreData @UIApplicationMain // <- WHY IS IT HERE? class AppDelegate: UIResponder,UIApplicationDelegate { ...
Swift中的@UIApplicationMain属性替代了在Objective-C项目中找到的琐碎main.m文件(其目的是实现所有C程序的入口点的主函数,并调用UIApplicationMain启动Cocoa Touch运行循环和应用程序基础架构)。
在Objective-C中,UIApplicationMain函数提供的每个应用程序配置的主(heh)位是指定一个应用程序的自定义类作为共享UIApplication对象的委托。在Swift中,您可以通过将the @UIApplicationMain
attribute添加到该类的声明中来轻松地指定此类。 (你也可以直接调用UIApplicationMain函数,如果你有原因)。在Swift中你把这个调用放在main.swift文件的顶层代码中。)
@UIApplicationMain仅适用于iOS。在OS X中,应用程序委托传统上设置在由Info.plist指定的主要nib文件中(Swift与ObjC相同),但是OS X storyboard没有主要的nib文件,所以@NSApplicationMain也做同样的事情。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。