J'ai quelque chose comme ça :
Bitmap.Config conf = Bitmap.Config.ARGB_8888;
WeakReference<Bitmap> bm = new WeakReference<Bitmap>(Bitmap.createBitmap(3000 + 3000, 2000, conf));
Canvas canvas = new Canvas(bm.get());
canvas.drawBitmap(firstBitmap, 0, 0, null);
canvas.drawBitmap(bm, firstBitmap.getWidth(), 0, null);
imageView.setImageBitmap(bm);
Et j'applique ceci sur plus de 10 imageViews qui sont créées une par une. A chaque fois que je crée une nouvelle ImageView, je veux recycler l'objet 'bm' de la première, parce que ce code là-haut, fait grossir mon tas de plus en plus et jette ensuite OutOfMemoryError alors je le fais :
bm.recycle()
juste après avoir fixé le Bitmap (bm) à l'objet imageView. Cela provoque une exception car le canevas de l'ImageView veut dessiner un bitmap recyclé.
Comment recycler un Bitmap qui a déjà été placé comme image sur ImageView ?
Mercib