2013-07-16 60 views
2

我的團隊有一個項目,我們通過在bitbucket.org上推/拉它來更新我們的代碼。最近我們遇到了一個問題,我們無法打開更新後的項目代碼的故事板。 這是錯誤說:解除文檔對象的故事板錯誤 - *** - [__ NSArrayM insertObject:atIndex:]:object can not be nil

The document "MainStoryboard.storyboard" could not be opened. The operation couldn’t be completed. (com.apple.InterfaceBuilder error -1.) ,這是屏幕截圖

Story Board Error

你有任何想法,爲什麼發生這種情況?我們做了什麼可能的錯誤舉動?你有什麼想法如何解決它..?

編輯

我已經升級到4.6.3的Xcode,但我仍然得到這個錯誤。

+0

如果有人打開故事板在Xcode5和「升級」它Xcode5格式,它可以在Xcode4成爲編輯。 – Eimantas

+0

我們都使用Xcode 4.6.1,你認爲它很重要,因爲故事板不打開的那臺筆記本電腦也使用Xcode 4.6.1,當他的操作系統是Mac OS X 10.7時,你不覺得我需要安裝更多兼容版本像它讓我們說Xcode 4.6.3? – caribbean

+0

Xcode的內部版本號之間不應存在不兼容問題。所以我不能告訴你有什麼問題。重新安裝Xcode可能會有所幫助。 – Eimantas

回答

3

我最近發現這個答案,我們所做的事情是

  1. 我們打開控制檯登錄。
  2. 當控制檯日誌打開時,我們試圖打開破碎的故事板。
  3. 我們發現在控制檯日誌中的錯誤,在這種情況下,我們發現這一點: Exception raised while unarchiving document objects - *** -[__NSArrayM insertObject:atIndex:]: object cannot be nil

我們發現,我們在其他計算機腳本中使用的字體樣式,並沒有安裝的字體樣式在其他Macbook上,這就是爲什麼我們有上述錯誤。

4。我們在其他Macbook中安裝了缺少的字體樣式。

這個問題幫了我們很多 - xcode storyboard - ibtoold unarchiving exception

0

在終端中嘗試執行git status以確保您擁有文件的乾淨副本,而不是具有本地修改和/或合併衝突的副本。

用文本編輯器打開文件,看它看起來是否與其他機器相同。

你看過XCode中的控制檯選項卡,看看它說的問題是什麼?

+0

它不會在控制檯中返回任何錯誤,據我所知我有一個乾淨的副本,實際上我試圖運行的只是git – caribbean

+0

@rjmuno中當前推送的代碼的克隆,感謝您的幫助,我們找到了答案 – caribbean

0

我有這個問題。原來這是造成該問題的歸因字符串。我不得不手動編輯故事板文件以用普通字符串替換它(即替換<state>...</state>部分)。在你的故事板文件中尋找hasAttributed...=YES並從那裏開始。

Ex。更換的東西,如:

<state key="normal"> 
    <attributedString key="attributedTitle"> 
    <fragment content="Sign up"> 
     ... 
    </fragment> 
    </attributedString> 
</state> 

有了:

<state key="normal" title="Sign up"> 
    ... 
</state> 
相關問題