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