在xcode中,这是我创建的一个视图:
如果我在模拟器中运行程序,我可以看到这个视图很好。但是,如果我创建一个UIViewController类并将其与此视图挂钩(我确认此视图是一个UIViewController),这就是我在模拟器中得到的:
为什么我会看到这个空白屏幕?如何才能获得看起来像第一张图像的屏幕?
编辑:代码
#import "EnterLevelViewController.h"
@interface EnterLevelViewController ()
@end
@implementation EnterLevelViewController
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}
- (void)loadView
{
// Implement loadView to create a view hierarchy programmatically, without using a nib.
}
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
}
- (void)viewDidUnload
{
[super viewDidUnload];
// Release any retained subviews of the main view.
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return (interfaceOrientation == UIInterfaceOrientationPortrait);
}
@end
答案 0 :(得分:5)
从您的代码中可以看出,您已从视图控制器中取消注释-(void)loadView
方法,该方法在模板中提供。执行此操作时,控制器将尝试以编程方式构建视图,而不是使用nib(storyboard)。完全删除空方法,看看是否有帮助。
答案 1 :(得分:1)
只需从tabBarController拖到故事板中的新ViewController,当你松开时,按下关系ViewController的选择。
以下是如何使用三个标签进行设置的快速示例,其中一个标签位于您的视图中:
答案 2 :(得分:0)
作为项目一部分的故事板已经包含了一个视图控制器及其相关视图。您可以在发布的故事板图像中看到它 - 它是底部带有浅灰色背景的图标。该视图控制器被设置为根视图控制器,作为项目模板的一部分的代码加载了该视图控制器及其视图。这就是你在模拟器中看到的。添加另一个视图控制器时,必须将其配置为根控制器。由于它没有连接到它的视图(或者如果它连接,视图为空),你不再看到任何东西。