之前我创建了一个名为FTIBTagsActivityViewController
的新文件,其中包含一个笔尖。在玩了一段时间后,我决定将用户界面移动到我的主故事板。所以我删除了.xib文件,在我的主故事板中重新创建了UI,给了FTIBTagsActivityViewController
类的接口,并尝试使用。
但是,每当我尝试呈现这个视图控制器时:
- (UIViewController *) activityViewController
{
FTIBTagsActivityViewController *tavc = [[FTIBTagsActivityViewController alloc] init];
tavc.tags = tagsSplit;
return tavc;
}
(此代码返回到UIActivityViewController,然后尝试以模态方式呈现它。)
我的应用程序崩溃了。
2013-12-15 18:07:55.982 Mignori[3855:60b] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: '-[UIViewController _loadViewFromNibNamed:bundle:] loaded the "FTIBTagsActivityViewController" nib but the view outlet was not set.'
它清楚地说它有一个名为FTIBTagsActivityViewController
的笔尖,但这有两个奇怪的问题:
FTIBTagsActivityViewController
的每个UI元素 - 也就是说,为了测试,我从我的故事板中删除了界面,而且我的应用程序仍在使用此消息崩溃。我查看了我的项目目录,没有FTIBTagsActivityViewController.xib。它实际上是成功加载了一个不存在的xib。
我已经尝试清理我的项目并再次编译,但此错误仍然存在。帮助
答案 0 :(得分:2)
这是一个奇怪的问题,我按照以下步骤开始工作:
答案 1 :(得分:1)
使用[UIStoryboard storyboardWithName:@“yourstoryboardname”bundle:[NSBundle mainBundle]]创建一个uistoryboard。
确保您的viewcontroller在您的情节提要中有一个标识符,并将其设置为正确的类
在1上创建的故事板上调用instantiateViewControllerWithIdentifuer:@“yourId”]。
答案 2 :(得分:0)
使用UIstoryboard类加载viewcontroller。使用alloc init加载一个viewcontroller将使它搜索不在那里的anib。然后,如果你没有实现loadView,就没有视图。