设置UIWindow的rootViewController有什么作用?

时间:2011-11-20 19:29:22

标签: iphone ios cocoa-touch uiviewcontroller uiwindow

  

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

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

  

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

内容视图的确切含义是什么?

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

1 个答案:

答案 0 :(得分:43)

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

[window addSubview:viewController.view];
[window makeKeyAndVisible];

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

当您使用rootViewController属性时,您不再需要将视图控制器的视图添加到UIWindow实例,这是自动完成的。所以代码行数保持不变,但现在你的UIWindow引用了视图控制器。

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

window.rootViewController = viewController;
[window makeKeyAndVisible];