1

n 個の連絡先をリストする UITableiew があり、テーブル ビュー デリゲート didSelectRowAtIndexPath から UINavigationController pushviewcontroller を使用して「Contactview」UIViewController に移動しています

たとえば、最初の連絡先を Contactview に移動すると、Live Bytes メモリが1 MB から 3 MBに増加します。次に、戻るボタンをタップすると、viewcontroller dellocメソッドが呼び出されますが、メモリはまだ2.95MB から 3MB程度のままです。私の質問は、viewcontroller のdellocメソッドが呼び出されたときに、viewcontoller のメモリを解放する必要があるということです。私はどこか間違っていますか?私が間違っている場合は、私に提案してください。そして私はARCプロジェクトを使用しています。

前もって感謝します..

4

5 に答える 5

0

コード内の別の場所で、View Controller の強い参照を所有している場合があります。本当に割り当てが解除されているかどうかを確認する必要があります...他のオブジェクトがナビゲーションコントローラーを超えて参照している場合、割り当ては解除されません。オーバーライド解放を試してください。(ARC プロジェクトで dealloc をオーバーライドすることもできますが、retain count 操作呼び出しの使用のみが許可されていません。) dealloc が呼び出されたかどうかを確認するには、そのメソッドにログ記録またはデバッグ可能なコードを入れます。

于 2013-08-06T10:41:44.743 に答える