universal-image-loader解決OOM終極辦法

從別的地方找的資料,原文地址找不到了.....

import java.util.ArrayList;
import java.util.List;
import com.nostra13.universalimageloader.core.assist.FailReason;
import com.nostra13.universalimageloader.core.listener.ImageLoadingListener;
import android.graphics.Bitmap;
import android.view.View;

public class ReleaseBitmap implements ImageLoadingListener {

    private List<Bitmap> mBitmaps;

    public ReleaseBitmap() {
        mBitmaps = new ArrayList<Bitmap>();
    }

    public void cleanBitmapList() {
        if (mBitmaps.size() > 0) {
            for (int i = 0; i < mBitmaps.size(); i++) {
                Bitmap b = mBitmaps.get(i);
                if (b != null && !b.isRecycled()) {
                    b.recycle();
                }
            }
        }
    }

    @Override
    public void onLoadingCancelled(String arg0, View arg1) {
    }

    @Override
    public void onLoadingComplete(String arg0, View arg1, Bitmap arg2) {
    }

    @Override
    public void onLoadingFailed(String arg0, View arg1, FailReason arg2) {
    }

    @Override
    public void onLoadingStarted(String arg0, View arg1) {
     }
}

在需要釋放資源的地方:

ReleaseBitmap rb = new ReleaseBitmap();
rb.cleanBitmapList();`
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容