web-dev-qa-db-fra.com

Convertir un fichier Bitmap immuable en Bitmap mutable

UNE:

 Bitmap immutableBmp= BitmapFactory.decodeResource(getApplicationContext().getResources(),R.drawable.sample);
 mutableBitmap=immutableBmp.copy(Bitmap.Config.ARGB_8888, true);

B: 

Bitmap immutableBmp= BitmapFactory.decodeFile(filePath);
mutableBitmap=immutableBmp.copy(Bitmap.Config.ARGB_8888, true);

C:

BitmapFactory.Options options = new BitmapFactory.Options();
options.inMutable=true;
myBitmap=BitmapFactory.decodeFile(filePath,options);

A fonctionne mais B et C ne le font pas. J'essaye de convertir un bitmap immuable en mutable. Cela fonctionne sur les images de ressources mais pas sur les images de fichiers. Quel est le problème? 

14
Alex

J'ai trouvé le problème! Toutes les 3 méthodes ci-dessus fonctionnent, il y avait un problème avec la résolution de mon image, donc je pensais que le code ne fonctionnait pas et qu'il n'était pas modifiable, mais j'avais tort Voici une autre solution pour changer l'image immuable en mutable.

BitmapFactory.decodeResource renvoie un bitmap mutable dans Android 2.2 et un bitmap immuable dans Android 1.6

1
Alex

Trouvé ceci: 

Bitmap bmp_Copy = bmp_Base.copy(Bitmap.Config.ARGB_8888,true);
1
Florian Erwig