2009-11-05 155 views
0

(對不起,我重新啓動這個線程,因爲我錯誤地接受了我的問題的答案。)iPhone SDK:視圖控制器之間的導航導致崩潰

,當我瀏覽我的應用雙視圖控制器我的應用程序崩潰。例如,如果我這樣做序列:

RootController ViewControllerA ViewControllerB ViewControllerA

我的應用程序崩潰。

當我在ViewControllerB中按下後退按鈕時,它崩潰。所以,它看起來像是有兩個或更多的ViewController被推送。每個人都自己工作。

我不知道爲什麼。

我看不到任何輸出到控制檯。有什麼類型的調試我應該放?

我看着的dealloc(),以確保所有屬性都被之前的dealloc()

任何想法的釋放?

謝謝。

回答

0

您的第二個視圖控制器是否保留對第一個視圖的引用而不保留它?如果是這樣,當你的2nd被釋放時,它可以釋放1st並導致它沒有引用並且是無效的對象。

+0

我不確定你的意思是通過持有第一個參考而不保留它?你有一個例子嗎? – 2009-11-06 03:19:46

+0

在ViewControllerB中,如果你有一個指向ViewControllerA * viewControllerA的指針,並且你不調用[viewControllerA retain],但是在dealloc方法中你調用[viewControllerA release]會降低retainCount,並可能使viewControllerA成爲一個無效的對象。那有意義嗎? – bmalicoat 2009-11-06 19:32:19