Android中传递图片的2种方法
方法一:
基本思路是先把bitmap转化为byte数组,用Intent传递数组,在将数组转化为bitmap
bitmap转化为byte数组的方法:
privatebyte[]Bitmap2Bytes(Bitmapbm){
ByteArrayOutputStreambaos=newByteArrayOutputStream();
bm.compress(Bitmap.CompressFormat.PNG,100,baos);
returnbaos.toByteArray();
}
byte数组转化为bitmap方法:
bytebuff[]=mIntent.getByteArrayExtra("image");
bitmap=BitmapFactory.decodeByteArray(buff,0,buff.length);
方法2:
发送图片:
Intentintent =newIntent(ChangePortraitActivity.this,UserProfileActivity.class);
mImageView.setDrawingCacheEnabled(Boolean.TRUE);
intent.putExtra("BITMAP",mImageView.getDrawingCache());//这里可以放一个bitmap
startActivity(intent);
接收图片:
//接收的activity
Intentintent=getIntent();
if(intent !=null&& intent.getParcelableExtra("BITMAP")!=null){
Bitmapbitmap=(Bitmap)getIntent().getParcelableExtra("BITMAP");
mImageViewPortrait.setImageBitmap(bitmap);
}