2011-10-18 8 views
2

多くのコントローラを表示するタブバーのようなカスタムコントロールがあります。その中には他のコントローラとタブバーを持つものもあります。したがって、すべてのコントローラがメモリに保存されるため、だから私は目に見えないコントローラをアンロードしたいが、私はUIViewControllerをアンロードするためのメソッドが見つかりませんでした。どうしたらいいですか?UIViewControllerのビューをアンロードする方法

PS。私はUITabBarControllerを使用することはできません、本当にできません。

答えて

1

あなたはしていません。 UIViewControllerは低メモリでアンロードされず、ビューからのみ読み込まれます。

これは、独自のビューコントローラでdidReceiveMemoryWarningで発生し、メモリ不足の警告が発生したときに自動的に呼び出されます。

これをオーバーライドし、viewDidLoadに再作成できるものをアンロードします。

1

スーパービューからビューコントローラビューを削除し、コントローラをリリースします。ジョブが完了しました。

+0

それはスーツではないですが、私は、コントローラのデータを維持する必要があります。私はあまりにも大きなアプリをすることはできませんよりMVCのバージョンにリメイク。 – Tesseract

+0

その場合、ビューはdidReceiveMemoryWarningを渡すと自動的にアンロードされますが、viewDidLoadで再作成するviewDidUnloadのものをクリーンアップする必要があります。 –

1

私はそれが古いスレッドだと知っていますが、誰かにとって役に立つかもしれません。

あなたはviewControllersをアンロードすることができますが呼び出すことで表示: - ロード意志はユーザーが期待するたびに発生した場合、インターネットデータからコントローラの負荷と

[viewControllerWhoseViewYouWantToUnload didReceiveMemoryWarning]; 
関連する問題