使用情节提示我尝试将UIViewController
叠加在当前View
之上。
在我的FirstViewController
我导入SecondViewController.h
,然后在viewDidLoad
方法中运行以下内容
SecondViewController *overlay = [[SecondViewController alloc]init];
overlay.view.frame = CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height);
[self addChildViewController:overlay];
[self.view addSubview:overlay.view];
[overlay didMoveToParentViewController:self];
[self.view bringSubviewToFront:overlay.view];
在我的SecondViewController.h
viewDidLoad
方法中,我有一个输出到NSLog
,当我运行应用程序时,它会显示在控制台中,但是第二个视图没有显示在首先。因此SecondViewController
已添加但未显示。我错过了什么?
基本上我希望SecondViewController
具有透明背景,这样我就可以做一个显示信息的花哨警报消息,你仍然可以看到它背后的FirstViewController
。
由于
答案 0 :(得分:1)
首先设置secondViewController的标识符并使用简单代码:
secondViewController *overlay = [self.storyboard instantiateViewControllerWithIdentifier:@"secondViewController"];
overlay.view.frame = CGRectMake(100, 100, 100, 200);
[self.view addSubview:overlay.view];
在我的情况下,标识符与类名称相同,即" secondViewController"。