0

我有一个有 4 种游戏模式的游戏。问题是我想创建一个主菜单来选择一种模式,因为没有那个菜单,而是有一个 TabBar。我正在尝试将每种模式放在不同的 .xib 文件中,并为菜单创建另一个 .xib 文件。

菜单.m:

-(IBAction)PlayMode1:(id)sender{
ViewController *Mode1 = [[ViewController alloc] init];
[self presentModalViewController:Mode1 animated:YES];
[Mode1 release];
}

有了这个我收到这个错误:由于未捕获的异常'NSInternalInconsistencyException'而终止应用程序,原因:'- [UIViewController _loadViewFromNibNamed:bundle:] 加载了“ViewController”笔尖,但未设置视图出口。

我检查了“视图”是否链接到 IB 上的“视图”,所以我不知道该怎么做......

我不是高级开发人员,感谢您的帮助!

xib 层次结构

4

1 回答 1

1

您应该尝试执行以下操作:

-(IBAction)PlayMode1:(id)sender{

    ViewController *Mode1 = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];
    [self presentModalViewController:Mode1 animated:YES];
    [Mode1 release];
}

好像你忘了把initWithNibName视图的分配放在里面。

此外,请确保您的 ViewController.xib 是视图控制器的正确名称,并检查它是否链接了正确的插座。

检查 View Identity > Class Identity 也已设置。如果没有,请输入您的控制器的名称,ViewController


编辑

删除 xib、“Window”和“ViewController”中的所有内容。

在左列拖动一个 UIView 并设置它的出口。

单击 File's Owner,然后在 Inspector、Identity inspector 部分(左起第三个)中输入视图的类“ViewController”。

于 2012-09-04T19:10:01.263 回答