Iphone 推送序列图像板viewcontroller可防止通过ViewDidDisplay加载视图?

Iphone 推送序列图像板viewcontroller可防止通过ViewDidDisplay加载视图?,iphone,ios,storyboard,viewdidappear,Iphone,Ios,Storyboard,Viewdidappear,我有一个带有一个视图控制器的故事板,它用以下代码推送另一个视图控制器: UIViewController *viewController = [self.storyboard instantiateViewControllerWithIdentifier:@"adVideo"]; [self presentViewController:viewController animated:NO completion:nil]; 在被推送的视图控制器中,有一个UIView,我正试图获取

我有一个带有一个视图控制器的故事板,它用以下代码推送另一个视图控制器:

    UIViewController *viewController = [self.storyboard instantiateViewControllerWithIdentifier:@"adVideo"];
    [self presentViewController:viewController animated:NO completion:nil];
在被推送的视图控制器中,有一个UIView,我正试图获取它的帧,以便可以使用它放置另一个对象。我已将其连接到viewcontroller类中的UIView IBOUTLET属性,然后在ViewDidDisplay中为该视图控制器调用该帧,但它显示为空(0,0,0,0)


视频视图没有被该点加载以便帧可以通过的原因是什么

你确定self.videoView不是nil,并且你没有错误地混淆两个视图控制器吗?当我运行应用程序时,它显示正在按下正确的视图控制器,然后在该视图控制器上我可以看到videoView。我还检查了IBOUTLET是否确实正确连接到了故事板。您能否在该NSLog上设置断点,使用
po[self videoView]
获取视频视图的内存地址,并查看是否可以在
po[[UIWindow keyWindow]recursiveDescription]的输出中找到它
?执行此操作时,递归描述仅显示上一个视图控制器中的项目。po[self videoView]确实有效并且存在。你不应该用“推送”这个词来描述你在做什么——推送是导航控制器完成的一种特定转换。控制器正在“呈现”。如果你登录self,你会得到你的子类吗?顺便说一句,您可以使用NSLog(@“%@”、NSStringFromCGRect(self.videoView))更轻松地打印出帧。
-(void)viewDidAppear:(BOOL)animated {
    [super viewDidAppear:animated];
        NSLog(@"%f %f %f %f", self.videoView.frame.origin.x, self.videoView.frame.origin.y, self.videoView.frame.size.width, self.videoView.frame.size.height);
}