iOS项目入口的演变过程(2021)

UISceneDelegate是什么,它和AppDelegate有什么关系,Swift中的@main又是什么,本文将带你一一了解。

这篇文章将主要讲解下面几点内容:

  1. iOS13之前的AppDelegate启动项目的流程
  2. UISceneDelegate的多窗口实现逻辑
  3. UISceneDelegateAppDelegate的关系
  4. int main()@main

单Window的AppDelegate

在iOS13之前iPhone上的项目都是单windows的,AppDelegate中的- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions就是iOS项目启动后第一个会被调用的函数。

作为一个开发者,有一个学习的氛围跟一个交流圈子特别重要,这是一个我的iOS开发交流群:130 595 548,不管你是小白还是大牛都欢迎入驻 ,让我们一起进步,共同发展!(群内会免费提供一些群主收藏的免费学习书籍资料以及整理好的几百道面试题和答案文档!)

纯代码在AppDelegate中启动App

AppDelegate中有一个window属性,需要自己来给windows指定一个rootViewController,在不使用storyboard或者xib的情况下,最简单的AppDelegate代码大概是下面这样子:

// AppDelegate.h
@interface AppDelegate : UIResponder <UIApplicationDelegate>

@property (nonatomic) UIWindow *window;

@end

// AppDelegate.m

#impor
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值