2016-09-26 81 views
2

由於我已將項目升級到xcode8和swift3,因此在ios10設備和模擬器上運行我的應用程序時遇到了麻煩。Xcode8'無法在包中加載NIB'

我可以正常啓動的應用程序,但使用它一段時間後,我得到了以下錯誤:

*** Terminating app due to uncaught exception 
'NSInternalInconsistencyException', reason: 'Could not load NIB in bundle: 
'NSBundle </Users/****/Library/Developer/CoreSimulator/Devices/****/data/Containers/Bundle/Application/****/*****.app> (loaded)' 
with name 'Ncx-Ud-4zl-view-1i6-0r-ivc' and directory 'Main.storyboardc'' 
*** 

奇怪的是,我可以通過相同的菜單導航或查看有時後3〜4倍它給了我錯誤。

該應用程序在ios9設備上正常工作。

更新: 我終於解決了它更新我的CoreDataStackManager類到Swift3 sintax,也避免使用我NSFetchedResultsControllers上的緩存。

+0

你檢查過你是否有那個筆尖嗎? –

+2

是的@Lu_,奇怪的是我有時可以瀏覽相同的菜單或視圖,並且在3到4次之後它會給我帶來錯誤。 –

+0

編寫導航代碼。 – Rock

回答

2

我也一直在努力與這個完全相同的問題,整個NIB有時不會隨機加載。我碰到的東西絆倒了今天有趣的解決,雖然我的問題:

(NSFetchedResultsController): couldn't read cache file to update store info timestamps(!感謝Donnit的答案)

總之,問題是與我用來檢索和顯示CoreData模型NSFetchResultsController做。如果您在應用程序中使用NSFetchRequestController,並且在初始化函數中設置了自己的cacheName,則Apple iOS 10中引入的錯誤似乎會在每次保存受管對象上下文時在設備的後臺打開文件。 iOS設備可以打開的最大文件數爲255,因此無法打開和加載新的NIB文件,然後崩潰(這似乎是我們正在獲取的)。

Donnit已經做了一些測試,顯示這是在測試解決適用於iOS 10.2,但暫時修復該同時更新之前,公開推出是從你NSFetchResultsController的去除cacheName

不知道你是否有同樣的問題,但它解決了我的一切。

+0

可能與OP的問題無關,但可能會再次發生。無論如何,有趣的閱讀! – matt

相關問題