欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android中传递图片的2种方法

程序员文章站 2022-03-08 17:47:39
方法一: 基本思路是先把bitmap转化为byte数组,用intent传递数组,在将数组转化为bitmap   bitmap转化为byte数组的方法: &...

方法一:

基本思路是先把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);   
}