16. Swift App开发.png

@UIApplicationMain

添加此声明,编译器会自动生成入口代码 (main 函数代码),并设置 AppDelegate 为应用程序的代理

  1. @UIApplicationMain
  2. class AppDelegate: UIResponder, UIApplicationDelegate {}

当然也可以自定义,新建名为 main.swift 的文件,编写以下内容:

  1. import UIKit
  2. class MyApplication: UIApplication {}
  3. // 文件名必须为 `main.swift`,第三个参数可为空
  4. UIApplicationMain(CommandLine.argc,
  5. CommandLine.unsafeArgv,
  6. NSStringFromClass(MyApplication.self),
  7. NSStringFromClass(AppDelegate.self))

在 OC 中,入门文件 main.m 是这样的:

  1. #import <UIKit/UIKit.h>
  2. #import "AppDelegate.h"
  3. int main(int argc, char * argv[]) {
  4. NSString * appDelegateClassName;
  5. @autoreleasepool {
  6. // Setup code that might create autoreleased objects goes here.
  7. appDelegateClassName = NSStringFromClass([AppDelegate class]);
  8. }
  9. return UIApplicationMain(argc, argv, nil, appDelegateClassName);
  10. }

资源名管理
https://github.com/mac-cain13/R.swift
https://github.com/SwiftGen/SwiftGen