0

アプリ内で UIImage オブジェクトを作成した場合、名前を付けて UIImage 画像キャッシュに入れることはできますか? 基本的に、後で imageNamed: を呼び出して取得したいと思います。ただし、システムによって破棄された場合を除き、破棄された場合は再作成します。

4

1 に答える 1

1

を使用してオブジェクトを作成する[UIImage imageNamed:"somename.png"]と、自動的にキャッシュされ、メモリ警告通知がある場合、またはできればアプリケーションを中断した場合にのみ解放されます。

それをさらに制御したい場合は、次のいずれかの方法をお勧めします。

  • someDictionary に格納し、それを userDefaults に格納します。例 {"imageName":"the name.format","imageData":someImageData"}. 辞書の配列にすべてを格納することもできます。
  • 列挙型配列: 必要なすべての画像をユーザー デフォルトの配列に格納します。そして名前を列挙された typedef にします。文字列を配列インデックスに一致させるだけです。

画像には静的な名前があると想定しています。画像名を頻繁に変更する場合は、キャッシュをまったくお勧めしません。

于 2012-07-10T17:41:33.533 に答える