2009-08-31 8 views
0

私のメインビューコントローラ(私のアプリのメインメニューを表す)は、いくつかのサブビューを持つシンプルなUIViewを持っています。私はモーダル型のデザインパターンを使用していて、最後にメインメニューに戻る前に複数の他のビューコントローラに切り替えています。問題は、私の他のView Controller(メインメニューではない)では、データ量の多いイメージなどをロードして、メインメニュー(現時点では画面に表示されていない)が時々、メモリ警告。問題は、私が最終的に私のメインメニューに戻ったとき、画面はすべて黒で、いくつかのUILabelsを除いてすべてがディスペンスされていることです。この時点で、私は私の見解を再読み込みして新鮮なものから始めたいと思います。しかし、ドキュメントでは、loadViewを直接呼び出すべきではないと言います。私のビューを再ロードするにはどうしたらいいですか?メモリアンロード後にUIViewを再ロードするには?

答えて

6

isViewLoadedプロパティを確認してください。NOが返されます。ビューが正しくアンロードされた場合、isViewLoadedNOを返し、ビューコントローラのviewを呼び出して自動的にビューに再びロードされます。

カスタムビューのアンロードコードを確認してください。あなたに属するビュー階層([[self view] removeFromSuperview])からすべてを削除する必要があります。

アンロードコードを取得していない場合は、ビューを一部保持しすぎていないことを確認してください。アンロード時に問題が発生します。

関連する問題