私のアプリケーションでは、いくつかのビットマップ画像をHashMapに保存しています。クラスImageHolderのメンバーとしてハッシュマップを使用します。画像をさらに処理するには、プログラムのHashMapに画像が必要です。アプリケーションを実行すると、ビットマップイメージが自動的にリサイクルされ、次のようになります。
java.lang.IllegalStateException:リサイクルされたビットマップでgetPixels()を呼び出すことができません。
ビットマップ画像が自動的にリサイクルされないように助けてください。
ImageHolderクラスのコードは次のとおりです。
public class ImageHolder {
private HashMap<String, Bitmap> mImageMap = null;
public ImageHolder() {
mImageMap = new HashMap<String, Bitmap>();
}
/**
* @return the mImageMap
*/
public Map<String, Bitmap> getmImageMap() {
return mImageMap;
}
/**
* @param mImageMap the mImageMap to set
*/
public void setmImageMap(HashMap<String, Bitmap> mImageMap) {
this.mImageMap = mImageMap;
}
}