设置UIWindow的rootViewController有什么作用?

Sta*_*ley 16 iphone cocoa-touch uiviewcontroller uiwindow ios

将视图控制器分配给此属性(以编程方式或使用Interface Builder)将视图控制器的视图安装为窗口的内容视图.

以上引用来自UIWindow的参考.我的问题是关于特定的阶段:

"将视图控制器的视图安装为窗口的内容视图"

确切的内容视图是指什么?

http://developer.apple.com/library/ios/#documentation/uikit/reference/UIWindow_Class/UIWindowClassReference/UIWindowClassReference.html

Can*_*der 43

在该rootViewController属性出现之前,大多数应用程序在应用程序委托中都有这样的代码:

[window addSubview:viewController.view];
[window makeKeyAndVisible];
Run Code Online (Sandbox Code Playgroud)

此代码将视图控制器的视图设置为主视图,但UIWindow实例没有引用拥有该视图的控制器.

使用该rootViewController属性时,您不再需要将视图控制器的视图添加到UIWindow实例,这是自动完成的.因此代码行数保持不变,但现在您的UIWindow具有对视图控制器的引用.

因此,在较新的应用程序中,我们现在的代码如下所示:

window.rootViewController = viewController;
[window makeKeyAndVisible];
Run Code Online (Sandbox Code Playgroud)

  • 考虑到历史推理的综合答案+1 (6认同)