0
我有一個應用程序,我使用ViewPager並設置在每個頁面「片段」的圖像。ViewPager:位圖大小超過VM預算
當我滾動視圖尋呼機後圖像25它給我的內存異常,但我刪除圖像,每次轉到下一頁。
檢查下面的代碼:
public void destroyItem(View collection, int position, Object view) {
Log.d("**", "remove image");
((ViewPager) collection).removeView((ImageView) view);
} //method: remove item from pager adapter
我試圖代碼從這裏到刪除的ImageView,但它並沒有解決的問題:
private void unbindDrawables(View view) {
if (view.getBackground() != null) {
view.getBackground().setCallback(null);
}
if (view instanceof ViewGroup) {
for (int i = 0; i < ((ViewGroup) view).getChildCount(); i++) {
unbindDrawables(((ViewGroup) view).getChildAt(i));
}
((ViewGroup) view).removeAllViews();
}
}
編輯:
下面的代碼就能解決問題,但我想使用完整的圖像大小,爲什麼它不是刪除圖像?
BitmapFactory.Options options = new BitmapFactory.Options();
options.inSampleSize = 2; //reduce image size