Réponses:
En supposant que vous l'appeliez dans une classe d'activité
Bitmap bm = BitmapFactory.decodeResource(getResources(), R.drawable.image);
Le premier paramètre, Resources, est requis. Il est normalement disponible dans n'importe quel contexte (et sous-classes comme Activity).
Essaye ça
C'est de sdcard
ImageView image = (ImageView) findViewById(R.id.test_image);
Bitmap bMap = BitmapFactory.decodeFile("/sdcard/test2.png");
image.setImageBitmap(bMap);
Cela provient des ressources
Bitmap bMap = BitmapFactory.decodeResource(getResources(), R.drawable.icon);
Si la ressource s'affiche 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 saisit en fait toute la mise en page, mais vous pouvez modifier comme vous le souhaitez.
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 vous pouvez utiliser l'événement de clic de bouton, ce code ne montrera que comment stocker l'image dessinable dans l'objet bitmap.
Bitmap contact_pic = BitmapFactory.decodeResource(
v.getContext().getResources(),
R.drawable.android_logo
);
Vous pouvez maintenant utiliser cet objet bitmap, que vous souhaitiez le stocker ou l'utiliser dans google maps tout en dessinant une image à une latitude et une longitude fixes, ou pour en utiliser ailleurs
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 juste changer la valeur nulle avec getResources () Si vous utilisez ce code dans n'importe quel bouton ou événement de clic de vue d'image, ajoutez simplement getApplicationContext () avant getResources () ..
En utilisant cette fonction, vous pouvez obtenir une image bitmap. Passez simplement l'URL de l'image
public Bitmap getBitmapFromURL(String strURL) {
try {
URL url = new URL(strURL);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setDoInput(true);
connection.connect();
InputStream input = connection.getInputStream();
Bitmap myBitmap = BitmapFactory.decodeStream(input);
return myBitmap;
} catch (IOException e) {
e.printStackTrace();
return null;
}
}