android 传递图片的方法

方法一:

基本思路是先把bitmap转化为byte数组,用Intent传递数组,在将数组转化为bitmap

 

 bitmap转化为byte数组的方法:

 

private byte[] Bitmap2Bytes(Bitmap bm){     
    ByteArrayOutputStream baos = new ByteArrayOutputStream();       
    bm.compress(Bitmap.CompressFormat.PNG, 100, baos);       
    return baos.toByteArray();     
   }    

 byte数组转化为bitmap方法:

byte buff[]=mIntent.getByteArrayExtra("image");  
bitmap = BitmapFactory.decodeByteArray(buff, 0, buff.length); 

 

方法2:

发送图片:

 

Intent intent  = new Intent(ChangePortraitActivity.this , UserProfileActivity.class);  
 mImageView.setDrawingCacheEnabled(Boolean.TRUE);  
intent.putExtra("BITMAP", mImageView.getDrawingCache()); //这里可以放一个bitmap  
 startActivity(intent);  

 

接收图片:

 

//接收的activity  

Intent intent = getIntent();  
if (intent  != null &&  intent.getParcelableExtra("BITMAP") != null) {  
    Bitmap bitmap = (Bitmap)getIntent().getParcelableExtra("BITMAP");  
    mImageViewPortrait.setImageBitmap(bitmap);  
}  

 

你可能感兴趣的:(android,图片,intent)