7

我正在从故事板显式加载视图控制器并具有以下代码:

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Storyboard" bundle:nil];
UIViewController *initViewController = [storyboard instantiateViewControllerWithIdentifier:@"InitialScreen"];

但是我收到一个错误“'Storyboard () doesn't contain a view controller with identifier 'InitialScreen'”

然而,从屏幕截图中可以看出,视图控制器确实具有该标识符。我之前成功地使用过这种加载控制器的相同方式,但不知道为什么这次它不起作用。任何想法可能是什么问题?

在此处输入图像描述

4

2 回答 2

5

我刚刚发现了问题 - 这是模拟器的问题,我发现我的代码绝对没有问题,并且 100% 确定没问题,当我过去遇到这种情况时,我通常会发现罪魁祸首是Xcode 本身。因此,即使我已经多次清理和重建,我还是决定尝试重置模拟器中的内容——然后宾果游戏开始工作了。我把它归结为模拟器缓存内容中的一个错误,而不是更新以反映在 IB 中所做的更改。

于 2013-04-04T15:10:29.593 回答
0

您的故事板名称是否与您尝试从中加载视图控制器的故事板文件的名称匹配?通常故事板被命名为MainStoryboard_iPhone

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:nil];

您还应该检查以确保 Storyboard ID 文本字段中没有尾随空格。除此之外,其他一切看起来都应该对我有用。

于 2013-04-01T23:37:31.807 回答