我有一个名为 ViewController 的视图控制器。
- ViewController 显示一个 UIView,上面有一个按钮,它允许我前进到第二个视图控制器 - SecondViewController。
- SecondViewController 上面还有一个按钮,可以让我前进到第三个视图控制器。
但是,我无法显示 ThirdViewController。当我点击 SecondViewController 中的按钮时,它会引发错误:
警告:尝试在...上呈现...,其视图不在窗口层次结构中!
我去过很多其他解决这个问题的网站和帖子,但似乎找不到有效的解决方案。我已经实施了很多解决方案,但似乎都没有。
这是我的代码:
- (void)secondaryView:(UIView *)secondaryView
{
UIView *theView = secondaryView;
UIViewController *viewController = [[UIViewController alloc] init];
viewController.view.frame = [UIScreen mainScreen].bounds;
[viewController.view addSubview:theView];
viewController.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
[self presentViewController:viewController animated:YES completion:nil];
}
secondaryView
是我在应用程序的其他地方构建的 UIView。我将它添加到 viewController 然后呈现viewController
.
有没有办法动态创建 UIViewControllers,为每个添加一个 UIView,并将它们添加到窗口层次结构中?