这可能对性能影响很小,但我注意到很多帖子和教程只是实例化并设置了根视图控制器
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
但是,实际上有一个方法未包含在默认的AppDelegate模板文件中,该文件首先被触发:
-(BOOL)application:(UIApplication *)application willFinishLaunchingWithOptions:(NSDictionary *)launchOptions
在其中任何一个中实例化视图控制器之间有什么区别吗?只是偏好或懒惰?
答案 0 :(得分:1)
这些之间的主要区别包括状态恢复(使用application:shouldSaveApplicationState
和application:shouldRestoreApplicationState
。application:willFinishLaunchingWithOptions
{{1}}注释:“如果您的应用依赖状态恢复机制来恢复它的视图控制器,总是从这个方法显示你的应用程序的窗口。“如果你没有做任何状态恢复,它可能没有任何真正的区别你使用的。