首先,我要提一下我是IOS开发的新手。
通常,当我们在XCODE中创建一个新项目时,没有像这样声明的对象
@property (nonatomic, retain) IBOutlet ViewController *viewController;在自动创建的AppDelegate.h中。尽管如此,大多数创建并作为子视图添加到主视图的自定义视图仍然可以正常工作。
但是在子应用程序中,需要如上所述声明我们的视图控制器的对象。并且必须添加到AppDelegate.m中window的子视图中,如下所示:
[window addSubview:viewcontroller.view];
[window makeKeyAndVisible];否则,一些控制器的视图,例如MPMediaPlayerController.view(在我的例子中)等,不能被正确地添加到viewController的视图中作为子视图。
这一切为什么要发生?
在哪些情况下,我们需要在委托类中声明视图控制器的对象?
发布于 2012-08-06 22:26:23
有不同的答案取决于你正在使用的Xcode版本和你如何定义你的接口,但是,假设最近有一个故事板,答案是它发生在加载你的初始控制器的过程中。
对于要使用的视图控制器,需要保留它,并且窗口的rootViewController是初始默认值。如果您查看“在启动时配置初始视图控制器”的文档,您将看到列出的一些步骤:
"... iOS执行以下操作:
..。
它将窗口的rootViewController属性设置为新的视图控制器。“
https://stackoverflow.com/questions/11829709
复制相似问题