在我的簡單導航樣式iPhone應用中,當用戶按下按鈕時,我使用presentViewController呈現視圖控制器V1(模態地)。dismisViewController在第一響應者設置時泄漏視圖控制器
當用戶按下另一個按鈕時,會使用presentViewController顯示另一個視圖控制器V2(模態地)。
我然後嘗試都一氣呵成駁回調用dismissViewController根導航控制器上,並如預期,他們從屏幕上:-)但是消失當我登錄的dealloc調用,那麼我什麼也看不到:-(
通過試驗和錯誤我跟蹤了這個問題,事實上在V1中,我實現了canBecomeFirstResponder == YES。如果我將其更改爲NO,則所有事情都會正常釋放,就好像第一響應者在V1上保留一個引用。 V2我看到V1辭職的第一響應者。事實上,如果我沒有呈現V2,那麼V1將會釋放就好了/
任何人看到這樣的事情或知道會發生什麼上?我在iOS7
[更新:我使用ARC,這一切都在一個非常簡單的測試應用 - 所以沒有委託或強引用的任何地方)
感謝。
你使用ARC嗎? –
斯科蒂嗨,你找到答案了嗎?導航控制器作爲子視圖控制器添加時遇到同樣的問題。 – hybridcattt