webentwicklung-frage-antwort-db.com.de

Bitmap von URI abrufen

Ich habe die Option "Share via myApp" hinzugefügt. Ich habe folgenden Code in die empfangende Aktivitätsklasse eingefügt.

    // Get the intent that started this activity
    Intent intent = getIntent();
    Uri data = intent.getData();

    // Figure out what to do based on the intent type
    if (intent.getType().indexOf("image/") != -1) {
        // Handle intents with image data ...
}

Was ist der nächste Schritt, um ein Bitmap-Bild abzurufen?.

15
Robert

Da hast du schon den Uri bekommen. Jetzt müssen Sie diesen Uri in getBitmap() übergeben, um eine Bitmap zu erhalten und diese Bitmap zu verwenden.

Uri imageUri = intent.getData();
Bitmap bitmap = MediaStore.Images.Media.getBitmap(this.getContentResolver(),imageUri);
Imageview my_img_view = (Imageview ) findViewById (R.id.my_img_view);
my_img_view.setImageBitmap(bitmap);
37
Chintan Khetiya

Um eine Bitmap von uri zu bekommen,

Bitmap  mBitmap = Media.getBitmap(this.getContentResolver(), uri);

Hoffe das hilft dir.

8
nikvs
Retrive bitmap from uri.....

public static Bitmap decodeUriToBitmap(Context mContext, Uri sendUri) {
        Bitmap getBitmap = null;
        try {
            InputStream image_stream;
            try {
                image_stream = mContext.getContentResolver().openInputStream(sendUri);
                getBitmap = BitmapFactory.decodeStream(image_stream);
            } catch (FileNotFoundException e) {
                e.printStackTrace();
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return getBitmap;
    }
1

Sie können dies versuchen. Sie können setPic () in der onActivityResult-Methode aufrufen. Ich habe dies in einer Anwendung verwendet, um Fotos aufzunehmen und sie in eine ImageView einzufügen.

private void setPic() {

    //currentPhotoPath contains path of image file.
    //visorFoto is a reference to an ImageView object.
    File file = new File(currentPhotoPath);
    Uri imageUri = Uri.fromFile(file);
    visorFoto.setImageURI(imageUri);

}
0
Jose

Das ist Arbeit für mich

protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK)
{
    Uri imageUri = data.getData();
    Bitmap bitmap = MediaStore.Images.Media.getBitmap(this.getContentResolver(), imageUri);
}
}