Objective c 什么是根视图控制器

Objective c 什么是根视图控制器,objective-c,xcode,Objective C,Xcode,当我们做这样的事情时 [self.window addSubview:switchViewController.view] 我们是否将switchViewController设置为rootViewController?实际上不是。rootViewController是主控制器。诸如didReceiveMemoryWarning之类的回调将仅发送到rootViewController。它必须决定它的地址 窗口包含任意数量的视图。其中有些有UIViewController,有些没有。So[self.

当我们做这样的事情时

[self.window addSubview:switchViewController.view]


我们是否将switchViewController设置为rootViewController?

实际上不是。rootViewController是主控制器。诸如didReceiveMemoryWarning之类的回调将仅发送到rootViewController。它必须决定它的地址


窗口包含任意数量的视图。其中有些有UIViewController,有些没有。So[self.windowaddsubview:switchViewController.view];只需将视图添加到窗口,它对其控制器一无所知。控制器应由rootViewController操纵。将switchViewController设置为rootViewController的唯一方法是调用self.rootViewController=switchViewController;在您的AppDelegate文件中。

Ah因此rootViewController是AppDelegate的属性。那东西不应该改变,对吗?是的。当应用程序启动时,应该只设置一次。您可以手动设置,也可以从nib文件设置-这无关紧要。@KonstantinChugalinskiy这意味着每次我想切换到下一个视图时,我都必须将其视图控制器设置为根视图控制器?