0

私は Web から写真をダウンロードし、キャッシュに保存しました。さて、XMLで写真を表示する方法。次のように保存された写真:

/data/data/com.example.app/cache/wpta_i.jpeg

ポジションによって変わります。私のXMLは次のとおりです。

 <LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical">

    <ImageView
      android:id="@+id/img"  
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:layout_gravity="center">      
    </ImageView>
  </LinearLayout>

キャッシュから画像を読み込んで表示するにはどうすればよいですか?

4

2 に答える 2

3

コードからドローアブルをロードしてから、ImageDrawable を ImageView に設定する必要があります。

String pathName = "/data/data/com.example.app/cache/wpta_i.jpeg"; 
Drawable d = Drawable.createFromPath(pathName);
ImageView myImageView=(ImageView)findViewById(R.id.img);
myImageView.setImageDrawable(d);
于 2012-10-09T11:05:48.187 に答える
0

Context.getCacheDir()Perrolocoの回答に示されているように、キャッシュディレクトリを取得してコードからアクセスするために使用できます。

ドキュメントには明確な警告が記載されています。

これらのファイルは、デバイスのストレージが不足したときに最初に削除されるファイルになります。

これらのファイルがいつ削除されるかは保証されません。

そのため、ロードする前にファイルが存在することを確認してください。

于 2012-10-09T11:12:19.723 に答える