0
我正試圖在android中實現圖像庫。 基於http://www.mobisoftinfotech.com/blog/android/android-gallery-widget-example-and-tutorial/的代碼,我改變了一些細節。內存泄漏圖像庫Android
我使用WeakReference,看起來,當我有太多的位圖時,垃圾收集器破壞我的弱引用。我該如何處理?
我通過此功能,讓我的位圖:
public static WeakReference<Bitmap> getBitmap(String imageName, int width,
int height) {
String pathToImage = getPathToImage(imageName);
Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
BitmapFactory.decodeFile(pathToImage, options);
/*
* Calculate inSampleSize
*/
options.inSampleSize = calculateInSampleSize(options, width, height);
// Decode bitmap with inSampleSize set
options.inJustDecodeBounds = false;
WeakReference<Bitmap> scaledBitmap = new WeakReference<Bitmap>(
BitmapFactory.decodeFile(pathToImage, options));
return scaledBitmap;
}
,我已經採取了分辨率320x480的解決方案,所以我想是不是這個大...
當畫廊已超過300圖片,其中一些不顯示。
畫廊教程不是很好嗎?是否有其他方法來實現這一點?
謝謝!
感謝您的意見!現在我沒有內存泄漏了,但仍然有問題顯示位圖高效...(不重新加載每次我改變當前位圖:([見](http://stackoverflow.com/questions/14775940/)內存泄漏 - 圖像畫廊 - 安卓 - 如何 - 其他 - 應用程序 - 處理它)) – Frame91
只是要確定:你是否從互聯網上下載圖像?或者你是否使用預先打包的圖像? – Redwarp
當我打開畫廊,圖像在我的磁盤上;)(之前下載過) – Frame91