2011-11-04 15 views
0

マイアプリケーションは5つのタブで構成されています。そのうちの4つに約20のテキストフィールド(文法的に作成され、ビューにサブビューとして追加された)がそれぞれ含まれています。 私の最後のタブは前のタブ(スクリーンショット)のプレビューです。ユーザーがこのタブに移動すると、プレビューが可能になり、プレビューでメールをトリガーするオプションが表示されます(4つのタブのすべてのスクリーンショットをメールに添付します)。これは正常に実装されましたが、メモリ警告が発生しました。私の問題を解決するためにどんな助力があれば幸いです。受信メモリ警告。レベル= 1 - 5つのタブを持つUITabBarControllerアプリケーション

私はこの方法でそれを試してみました:ビューが可視

- (void)didReceiveMemoryWarning 
{ 
    // Releases the view if it doesn't have a superview. 
    [super didReceiveMemoryWarning]; 
    if (!self.view.window) { 
     [preparedForTextField release]; 
     [agentTextField release]; 
     [phoneTextField release]; 
     [dateTextField release]; 
     [textFieldsArray release]; 
    } 
    // Release any cached data, images, etc. that aren't in use. 
} 

ない場合didReceiveMemoryWarningにリリースオブジェクトをとのviewDidLoadに再びビューをリロード。それでも私は記憶の警告を受けています。

答えて

2

メモリにあるすべてのものが必要な場合は、メモリ警告を無視してください(特にレベル1の警告は非常に簡単です)。そこにすべてを必要とせず、後で必要なものをリロードしたり再作成したりできる場合は、必要になるまでメモリーから取り出してからリロードまたは再作成してください。

+0

あなたが言ったように私はviewWillDisappearの1タブから他のタブに移動しているときにオブジェクトを解放しています。もう一度私はviewWillAppearでオブジェクトを作成しています。私は記憶の警告を受けています。私は何をすべきか? – Dee

+0

それはちょうど警告です、あなたが何もすることができないので、もっと何もリリースできなければ、無視してください... – Arkku

関連する問題