2

ギャラリーから画像を選択し、それをバイト データに変換する必要があります。ギャラリーから画像を選択する方法を知っています。また、画像をバイトデータに変換する方法も知っています。しかし問題は、描画可能な画像を変換することですが、ギャラリーから選択してバイトコードに変換する必要があります。onClick関数で、このコードを使用してギャラリーから画像を選択しています

Intent image = new Intent(Intent.ACTION_GET_CONTENT);
        image.setType("Image/*");
        startActivityForResult(image, 0);

そして、次のコードを使用して、描画可能な画像をバイトデータに変換しました。

 bm = BitmapFactory.decodeResource(getResources(),R.drawable.ic_launcher);
       data = new ByteArrayOutputStream(); 
       bm.compress(Bitmap.CompressFormat.JPEG, 40 , data);
     bitmapdata = data.toByteArray();

画像をギャラリーからバイトデータに変換するにはどうすればよいですか。ありがとう

4

1 に答える 1

2

次のように、選択した画像にonActivityResultを受け取ります。Uri

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if(requestCode == PICK_IMAGE && data != null && data.getData() != null){
       Uri imageUri = data.getData();
       //....
    }
}

次に、から取得するには、MediaStore次を使用する必要があります。

 Bitmap bitmap =
      MediaStore.Images.Media.getBitmap(this.getContentResolver(), imageUri);

その後、Bitmap今と同じように処理する必要があります。

于 2012-10-17T20:21:55.643 に答える