2011-07-01 22 views
1

我在xcode上有問題,當我的圖像(image1)與image2相撞時,我想用removefromsuperview將其刪除,但是當我運行我的應用程序時出現」EXC_BAD_ACCESS「錯誤,我認爲這是錯誤?到removefromsuperview我怎樣才能解決這個對不起,我的英語我是法國人:/問題EXC_BAD_ACCESS與「removeFromSuperView

回答

3

這意味着您呼叫removeFromSuperView不存在的物體,或者是以前發佈

確保您發送的。消息傳遞給有效對象

+3

我們如何確保對象是有效的? – tasomaniac

3

EXC_BAD_ACCESS表示在使用對象之後被釋放。使用Xcode的分析器(CMD + A)來查找在NSZombieEnabled標誌處使用調試器的位置。

如果你要我用法語,評論寫這個,我會翻譯:)

1

我得到了這一點,因爲我曾試圖從上海華刪除它之前刪除從視圖中的所有CALayers。 self.layer.sublayers = nil和遍歷它們都導致了這個問題。當視圖以編程方式實例化時,完美地工作,但是當我從故事板中實例化一個視圖時,它顯然有弱指向我不瞭解的其他圖層的指針。

解決方案?我一直跟蹤自己的所有圖層,並一次刪除一個圖層,而不是假設self.layer.sublayers中的所有圖層都屬於我的圖層。