2011-12-10 14 views
0

私は非常に簡単な質問があります: URLからリソース(一時的にアプリケーションが終了すると削除されるように)から画像を保存できるようにしたいのですそれをイメージリソースとして使用します(setImageResource(int resIDなど))。Androidは画像URLをリソースとして保存します

ありがとうございました。

答えて

3

イメージがアプリケーションにコンパイルされていない場合は、リソースとして使用できません。考えられる唯一の方法は、デバイスにインストールされた.apkファイルを変更することです。これは不可能です。

あなたが本当に求めていることは、ダウンロードした画像をImageView(または類似のもの)に設定するにはどうすれば表示できるのかということです。

あなたのステップ:SDカード上のファイルへの

  1. ダウンロード画像(HTTPClientまたはURLConnectionを使用してください)。
  2. BitmapFactory.decodeFile(File)を使用して、ファイルからメモリにBitmapをロードします。この手順を実行すると、ファイルを安全に削除できます。それはもはや必要ではありません(あなたが後でそれを再使用する予定がない限り)。
  3. ImageView.setImageBitmap(Bitmap)を使用して、Bitmapオブジェクトをロードしました。ImageViewに設定してください。

さらにBitmapオブジェクトが必要なくなったときにBitmap.recycle()に電話することを忘れないでください。

+0

これは完璧なトリックでした:) – Gal

0

イメージをリソースとして保存してIDで参照することはできないと思います。 アプリケーションがコンパイルされると、リソースが参照されるRクラスが生成されます。これについて詳しくはこちらをご覧ください:http://developer.android.com/guide/topics/resources/accessing-resources.html

あなたのケースでは、イメージを内部/外部ストレージにダウンロードし、必要に応じてストレージからロードすることができます。私はあなたの活動を終了すると、イメージを削除します。

関連する問題