我需要从图库中选择一个图像,然后将其转换为字节数据。我知道如何从画廊中挑选图像。我也知道如何将图像转换为字节数据。但问题是我转换可绘制的图像,但现在我需要从库中选择它并将其转换为字节代码。任何帮助 谢谢 在onClick函数中,我使用此代码从库中选择图像
Intent image = new Intent(Intent.ACTION_GET_CONTENT);
image.setType("Image/*");
startActivityForResult(image, 0);
我使用以下代码将drawable中的图像转换为字节数据。
bm = BitmapFactory.decodeResource(getResources(),R.drawable.ic_launcher);
data = new ByteArrayOutputStream();
bm.compress(Bitmap.CompressFormat.JPEG, 40 , data);
bitmapdata = data.toByteArray();
现在我如何将图像从图库转换为字节数据。 感谢
答案 0 :(得分:1)
在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
。