1

私はナビゲーションコントローラを持っていますが、私が把握できなかったことは、ビューコントローラをポップすると解放されないことです。ナビゲーションコントローラに関連付けられたビューコントローラを解放する

ナビゲーションコントローラに追加すると、私はこれをリリースしました。これは、ナビゲーションコントローラがビューコントローラの管理を担当することを意味しています。

しかし、ナビゲーションコントローラをポップアップすると、ポップされたビューコントローラがまだハングアップしていることがわかります。通知オブザーバがまだ実行中であるため、これはわかります。

また、ナビゲーションコントローラをビューから削除して解放し、それをnilに設定しようとしましたが、まだビューコントローラがハングしています。

ビューコントローラがポップされたとき、またはナビゲーションコントローラ自体をリリースしたときに、どこからビューコントローラを開くことができますか?

ありがとうございました。

答えて

2

通知オブザーバが表示されます...通知コントローラにビューコントローラが追加されましたか?その場合は、通知センターにView Controllerが保持されていると思います。 viewWillDisappearでそれをオブザーバとして削除し、deallocでNSLogをスローして、それが正しく解放されているかどうかを確認します。

+0

これは間違いなく、私は通知センターの参照を管理していない、私の悪い! – Daniel

関連する問題