/**
* Recycle bitmap resources
*/
public
void recycleBitmapRes() {
if (mConvertViews !=
null && !mConvertViews.isEmpty()) {
Collection<View> views = mConvertViews.values();
mConvertViews.clear();
for (View view : views) {
ImageView icon = (ImageView) view.findViewById(R.id.imgIcon);
if (icon !=
null) {
if (icon.getDrawable() !=
null && icon.getDrawable()
instanceof BitmapDrawable) {
Bitmap bitmap = ((BitmapDrawable) icon.getDrawable()).getBitmap();
if (bitmap !=
null && !bitmap.isRecycled()) {
bitmap.recycle();
}
}
}
}
}
}
@Override
public
void notifyDataSetChanged(){
//
Avoiding that buttons cannot be pressed
Utils.LogI("GameListAdapter", "notifyDataSetChanged");
recycleBitmapRes();
super.notifyDataSetChanged();
}