如何从ImageView中获取bitmap ,bitmap在activity中的传输
2016-01-26 10:51
351 查看
ImageView iv = (ImageView) v; iv.setDrawingCacheEnabled(true);//获取bm前执行,否则无法获取 Bitmap bm = iv.getDrawingCache(); if(bm!=null){ Intent intent = new Intent(context, ImageZoomActivity.class); ByteArrayOutputStream baos=new ByteArrayOutputStream(); bm.compress(Bitmap.CompressFormat.PNG, 100, baos); byte [] bitmapByte =baos.toByteArray(); intent.putExtra("bitmap", bitmapByte); startActivity(intent); iv.setDrawingCacheEnabled(false);//获取bm后执行,以清空画图缓冲区,否则下一次从ImageView对象中获取的图像, //还是原来的图像。 并且不能放在bm.compress(Bitmap.CompressFormat.PNG, 100, baos);前否则会提示bm已经被回收。 }
byte [] bis = getIntent().getByteArrayExtra("bitmap"); Bitmap bitmap=BitmapFactory.decodeByteArray(bis, 0, bis.length); mImageView.setImageBitmap(bitmap);
相关文章推荐
- vim 复制、删除多行(2)
- linux 相关学习资源
- windows下上传文件到VWware的centos
- Codeforces Round #338 (Div. 2):(615A)
- DateTime操作;
- Java集合类
- unsigned和signed
- maven仓库--私服(Nexus的配置使用)
- swift 动态设置UILabel的高度
- php学习之基础记录(1)
- 代码分析工具 findBugs
- 【划分型DP】数的划分
- Kafka学习-系列一
- c#大圣之路笔记——TFS解决离职人员文件签出遗留签入问题
- XMLHttpRequest 对象解析
- 并发队列ConcurrentLinkedQueue和阻塞队列LinkedBlockingQueue用法
- Android zxing二维码使用及修改小结
- SpringMVC表单标签简介
- 调用startAcyivityForResult后立即执行onActivityResult
- Android中的抽象类和接口实践