use*_*ser 0 objective-c uiviewcontroller ios appdelegate
我觉得我应该知道这一点,但我没有,而且总是让我困惑.
浏览示例代码和教程时,我有时会看到AppDelegates有一个
@property UIWindow* window,
然后是@synthesized后续跟进
[window setRootViewController:controllerToBeSet]
[window makeKeyAndVisible]
其他应用程序在代理中的任何位置都不会有一行代码.
据我所知,故事板中的友好箭头表示根视图控制器.那么打包的AppDelegates只是针对基于nib的项目吗?
我需要澄清使用didFinishLaunchingWithOptions委托方法的规范以及最初设置视图的方式.
你的理解基本上是正确的.以下引用来自Apple的文档(在"在您的应用程序中使用视图控制器"):
主故事板初始化您的应用程序的用户界面
主要故事板在应用程序的信息属性列表文件中定义.如果在此文件中声明了主故事板,那么当您的应用程序启动时,iOS将执行以下步骤:
它为您实例化一个窗口.它加载主故事板并实例化其初始视图控制器.它将新视图控制器分配给窗口的rootViewController属性,然后使窗口在屏幕上可见.
如果不使用故事板,则需要实例化窗口,设置窗口的根视图控制器,并使窗口在didFinishLaunchingWithOptions方法中可见.如果启动关闭故事板的单个视图项目,则可以从模板中获取该信息.