manual(清单5-2)说分割视图控制器可以像这样添加到UIWindow:
[window addSubview:splitVC.view];
但是,在示例代码中,我看到以下内容完全正常。
[window setRootViewController:splitVC];
这些之间有什么区别?
答案 0 :(得分:4)
在这种情况下,他们都做同样的事情,但addSubview
和setRootViewController
之间存在差异。 addSubView
是UIView
的方法,而UIWindow
继承自UIView
因此方法,而rootviewcontroller
属性来自UIWindow
类。但方法的差异是
addSubview
将视图添加到调用者视图层次结构和
调用对象保留所有权。
setRootViewController
将视图设置为仅Windows视图或主视图
如果你愿意的话。另外一点是它删除了所有子视图(如果有的话),而addSubView没有这样做。