* 由于未捕获的异常'NSInternalInconsistencyException'而终止应用程序,原因:'无法在bundle中加载NIB:'NSBundle(已加载)',名称为'ViewLecturer'
ViewLecturer *viewLecturer = [[ViewLecturer alloc]initWithNibName:@"ViewLecturer" bundle:nil];
[self.navigationController pushViewController:viewLecturer animated:YES];
我检查了文件类型,它是file.xib 双重检查xib名称是ViewLecturer但我仍然经常在设备上得到错误。 虽然在刺激器上工作正常。
答案 0 :(得分:11)
ViewLecturer *viewLecturer = [[ViewLecturer alloc]
initWithNibName:@"ViewLecturer" bundle:nil];
你需要处理两件事:
答案 1 :(得分:6)
确保使用正确的文件名,iOS区分大小写,而模拟器则不区分大小写。所以,如果它在模拟器中工作但在设备上没有,请检查文件名上的情况......
答案 2 :(得分:2)
刚刚找到了另一个原因。通常,当您向项目添加新文件时,xcode会自动将其添加到目标的“Copy Bundle resources”部分。
有时,如果您与其他人合作,project.pbxproj将不同步,此条目将被删除。修复是为了确保Resources文件夹中的所有文件(在发行版中都是必需的)也存在于“Copy Bundle resources”部分中,如果不是将它从资源拖到该部分。< / p>
享受!
答案 3 :(得分:0)
此问题与nibname有关。请检查笔尖名称。