Antworten:
Angenommen, Sie rufen dies in einer Aktivitätsklasse auf
Bitmap bm = BitmapFactory.decodeResource(getResources(), R.drawable.image);
Der erste Parameter, Ressourcen, ist erforderlich. Es ist normalerweise in jedem Kontext (und in Unterklassen wie Aktivität) erhältlich.
Versuche dies
Dies ist von SD-Karte
ImageView image = (ImageView) findViewById(R.id.test_image);
Bitmap bMap = BitmapFactory.decodeFile("/sdcard/test2.png");
image.setImageBitmap(bMap);
Dies ist aus Ressourcen
Bitmap bMap = BitmapFactory.decodeResource(getResources(), R.drawable.icon);
Wenn die Ressource angezeigt wird und eine Ansicht ist, können Sie sie auch erfassen. Wie ein Screenshot:
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);
Dies erfasst tatsächlich das gesamte Layout, aber Sie können es nach Belieben ändern.
Wenn Sie ein Bitmap-Objekt deklariert haben und es anzeigen oder dieses Bitmap-Objekt speichern möchten. Aber zuerst müssen Sie ein Bild zuweisen, und Sie können das Schaltflächenklickereignis verwenden. Dieser Code zeigt nur, wie das zeichnbare Bild in einem Bitmap-Objekt gespeichert wird.
Bitmap contact_pic = BitmapFactory.decodeResource(
v.getContext().getResources(),
R.drawable.android_logo
);
Jetzt können Sie dieses Bitmap-Objekt verwenden, unabhängig davon, ob Sie es speichern oder in Google Maps verwenden möchten, während Sie ein Bild auf einem festen Breiten- und Längengrad zeichnen, oder woanders
Ersetzen Sie einfach diese Leitung
bm = BitmapFactory.decodeResource(null, R.id.image);
mit
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.YourImageName);
Ich möchte sagen, ändern Sie einfach den Nullwert mit getResources (). Wenn Sie diesen Code in einer Schaltfläche oder einem Klickereignis für die Bildansicht verwenden, fügen Sie einfach getApplicationContext () vor getResources () hinzu.
Mit dieser Funktion können Sie Image Bitmap erhalten. Übergeben Sie einfach die Bild-URL
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;
}
}