我在代碼中提到行收到以下錯誤致命錯誤:意外發現零而展開的可選值,而展開SKSpriteNode
即使調試器顯示,BG已被分配一個值,它從.sks文件中獲取。 (GameScene.sks文件包含一個名爲bg的對象) 任何幫助將不勝感激。
- > - >編輯 雖然沒有感謝社會多數民衆贊成在這裏站滿了人誰願意只是儘量uncanningly機智和幽默的神,我設法找出自己。因此,如果其他人處於相同的情況下,以供將來參考,我將分享導致問題錯誤原因的代碼。
我在代碼中提到行收到以下錯誤致命錯誤:意外發現零而展開的可選值,而展開SKSpriteNode
即使調試器顯示,BG已被分配一個值,它從.sks文件中獲取。 (GameScene.sks文件包含一個名爲bg的對象) 任何幫助將不勝感激。
- > - >編輯 雖然沒有感謝社會多數民衆贊成在這裏站滿了人誰願意只是儘量uncanningly機智和幽默的神,我設法找出自己。因此,如果其他人處於相同的情況下,以供將來參考,我將分享導致問題錯誤原因的代碼。
在這個時間點調試器將顯示bg
一個值,該值是以前在那裏的堆疊(在存儲器垃圾)上。
它永遠不會寫任何東西到bg
,因爲程序崩潰時,評估變量的值,所以你只是看到垃圾。
您可以清楚地看到的錯誤意味着沒有名爲bg
的節點。
我會在你的代碼中添加一個修正,說'if let bg = childNodeWithName(「bg」)as? SKSpriteNode {//用bg}做些什麼。當bg是SKSpriteNode類型的非零值時,此if語句爲真。如果它沒有評估爲真實的機會,則沒有名稱爲「bg」的子節點和/或它是「SKSpriteNode」類型的 –
顯示你在sks中的節點名稱,只是爲了確保 – MaxKargin