Cela semble simple, j'essaie de définir une image bitmap, mais à partir des ressources, j'ai dans l'application dans le dossier pouvant être dessiné.
bm = BitmapFactory.decodeResource(null, R.id.image);
Est-ce correct?
En supposant que vous appelez ceci dans une classe d'activité
Bitmap bm = BitmapFactory.decodeResource(getResources(), R.drawable.image);
Le premier paramètre, Ressources, est requis. Il est normalement possible de l'obtenir dans n'importe quel contexte (et sous-classes comme Activité).
Essaye ça
C'est de sdcard
ImageView image = (ImageView) findViewById(R.id.test_image);
Bitmap bMap = BitmapFactory.decodeFile("/sdcard/test2.png");
image.setImageBitmap(bMap);
C'est des ressources
Bitmap bMap = BitmapFactory.decodeResource(getResources(), R.drawable.icon);
Si la ressource est affichée et est une vue, vous pouvez également la capturer. Comme une capture d'écran:
View rootView = ((View) findViewById(R.id.yourView)).getRootView();
rootView.setDrawingCacheEnabled(true);
rootView.layout(0, 0, rootView.getWidth(), rootView.getHeight());
rootView.buildDrawingCache();
Bitmap bm = Bitmap.createBitmap(rootView.getDrawingCache());
rootView.setDrawingCacheEnabled(false);
Cela occupe en fait toute la mise en page mais vous pouvez le modifier à votre guise.
Si vous avez déclaré un objet bitmap et que vous souhaitez l'afficher ou stocker cet objet bitmap. mais vous devez d’abord attribuer une image et utiliser l’événement de clic sur un bouton. Ce code ne fera que montrer que vous pouvez enregistrer l’image pouvant être dessinée dans un objet bitmap.
Bitmap contact_pic = BitmapFactory.decodeResource(v.getContext().getResources(), R.drawable.Android_logo);
Maintenant, vous pouvez utiliser cet objet bitmap, que vous souhaitiez le stocker, l'utiliser dans Google Maps tout en dessinant une photo à une latitude et une longitude fixes, ou utiliser un autre emplacement.
J'ai trouvé cette question lorsque je voulais définir un bitmap sur ma vue. Pour cette raison, j'ai trouvé ce code plus utile:
myImgView.setImageDrawable(getResources().getDrawable(R.drawable.monkey));
De ici
il suffit de remplacer cette ligne
bm = BitmapFactory.decodeResource(null, R.id.image);
avec
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.YourImageName);
Je veux dire simplement changer la valeur null avec getResources () Si vous utilisez ce code dans n’importe quel bouton ou événement de clic de la vue Image, ajoutez simplement getApplicationContext () avant getResources () ..