我目前看到这个错误:
MonoTouchException:抛出Objective-C异常。名称: NSInternalInconsistencyException原因:无法在bundle中加载NIB: 'NSBundle< / Users / imac / Library / Application Support / iPhone 模拟器/ 5.0 /应用/ 5D8B4B51-9FB2-4331-BFEB-B1A0AC77DF42 / Tutorial.app> (加载)'名称'MyFirstView'
我查看了许多其他问题,如:
但我看不到任何适用于此 - 它们主要是关于文件命名问题,我的Nib似乎在输出包文件中具有正确的名称。
我正在使用MonoTouch 5.2.5和xcode 4.2,并定位SDK5
有没有人对我可以尝试解决这个问题有任何想法?
答案 0 :(得分:1)
我今天遇到了同样的问题。我重构(重命名)viewController到myCustomViewController并得到此错误。当我搜索我的项目文件时,我看到我使用了self.viewController = [[[MyTableViewController alloc] initWithNibName:@"viewController" bundle:nil] autorelease];
NibName已更改但在@“”中它是旧名称。所以我把它改成了
self.viewController = [[[MyTableViewController alloc] initWithNibName:@"MyTableViewController" bundle:nil] autorelease];
并删除了错误。这样做,希望你的错误将被删除。 如果它有帮助就投票。
答案 1 :(得分:1)
问题最终似乎在扩展工具链中的某个地方 - 介于MonoDevelop,xCode4和模拟器之间。
重新启动所有内容,并重置模拟器可以解决问题。
后来在同一个链中我看到“旧的NIB文件出口”的小问题在模拟器上持续存在,即使我已经完全删除并重建了 - 所以某些地方仍然出现问题...但是一个干净的解决方案它每一次。
答案 2 :(得分:0)
所以我在MonoDevelop中有类似的解决方案。我创建了一个空的单声道触摸项目。当我删除与自动创建的项目关联的xib文件时,我遇到了问题。即使我创建了一个新视图并将插座连接到该控制器,我还是必须返回并重新创建与控制器相关联的xib文件(具有相同名称),然后通过插座连接原始视图和控制器