android位图在activity之间传递的问题
采用传统的方式,将bitmap转化为字节数组,利用intent传递byte[]。bitmap专为为byte[]的代码如下:
Intent in = new Intent(TestAnimation.this,CameraDemo.class);
Bitmap m = ((BitmapDrawable)(getResources().getDrawable(R.drawable.ic_launcher))).getBitmap();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
m.compress(Bitmap.CompressFormat.JPEG, 100, baos);
byte[] bitmapByte = baos.toByteArray();
in.putExtra("bitmap", bitmapByte);
startActivity(in);`
接收方接收到byte数组可以转化为bitmap,代码如下:
Intent in = getIntent();
if(in != null){
byte[] bis = in.getByteArrayExtra("bitmap");
System.out.println("-------CameraDemo bis length="+bis.length);
Bitmap bitmap = BitmapFactory.decodeByteArray(bis, 0, bis.length);
}
最后更新:2017-04-04 07:03:07