2009-04-01 14 views

答えて

6

いいえ、そうしてはいけません。古いイメージは新しいイメージを設定するときに自動的に解放され、 "imageNamed"メソッドは自動解放を使用するので、そこではOKです。

1

これは、どのようにimageプロパティが定義されているかによって異なります。もしそれがretainと定義されていたり、あるいはcopyであっても、それは良いはずです。割り当てが解除されたメモリを参照しようとすると、プログラムが破損し、assignと定義されてしまいます。

0

通常はありませんが、landscape.imageの定義方法によって異なります。上記のポストを参照してください。これらの多くを使用する場合は注意が必要です:

[UIImage imageNamed:@"tenerife1.png"]; 

をリリースしたことなく、これらの画像は、メモリがいっぱいにする傾向があるため。

+0

代わりに何を使うべきですか? – Thanks

4

ねえimageNamedは、キャッシュを制御できなくなったときに深刻なメモリ問題が発生します。つまり、画像の処理が完了したら、そのメモリを再利用することはできません。彼はimageNamed

をimageWithContentsOfFileを使用して代わりの提案 - 簡単にGoogle検索を使用すると、私はAppleのiPhoneテックトークにあったとプレゼンテーションを与える男は同じこいつを確認imageNamed

で問題に直面しているどのように多くの人々知っているでしょう

ちょっとした小さな画像を持っているのであれば、細かい点ではimageWithContentsOfFileを使ってください。少し遅くても、独自のキャッシングロジックを実装してください。here

関連する問題