2010-12-14 11 views
1

WWDC 2010のマルチタスク採用に関する話を見てきましたが、私はこのアプリケーションを有効にしていますが、iOSマルチタスク:バックグラウンドに入るとシステムによって実行される削減

トーク(セッション105 - iPhone OSでのマルチタスクの採用、パート1 - 00:34:50)によれば、システムはバックグラウンドを入力するときに「見えないUIViewControllerビュー」をリリースすると述べられています。しかし、私のテスト中(シミュレータで)、私はこれが起こるのを見ていない。

-viewDidUnloadメソッドが呼び出されておらず、フォアグラウンドに入り、以前に非表示のVCを表示した後に、-loadViewメソッドも呼び出されていません。だから私のUITabBarControllerの隠れたVCビューは、彼らが話していたことに反して全く解放されていません。何か案は?

"Moving to the Background"のドキュメントには、この話はありません。

いずれかの明確化は非常に認められる。

答えて

1

あなたのアプリがバックグラウンドの間にメモリ警告をシミュレートしましたか?私は、他のアプリがメモリを要求し始めるとビューが解放されると信じています。メモリ消費量が同じであれば、ビューは解放されないため、より早くスイッチバックできます。

+0

興味深い!バックグラウンドでメモリ警告をトリガすると、アプリがフォアグラウンドに再び入ると '-viewDidUnload'が呼び出されます。だから私の唯一の疑問は、アプリケーションが終了するのを見始める前に、システムがこれらの警告を(低メモリ状況の間に)引き起こすかどうかです。これらの不要なビューはメモリを消費し、iOSが見る「ダーティサイズ」の測定値に向かってカウントしています。 –

+0

はい、アプリが終了する前に警告が発生します。私はあなたが通知されている少なくとも2つの異なるレベルがあると信じています。私は3つの総合レベルと思います。私は現時点でそれを説明している医者を見つけることができませんが。 – Mike

関連する問題