设为首页 加入收藏

TOP

Android开发:用getDrawingCache方法获取ImageView中的图像需要注意的问题(一)
2014-11-24 11:36:41 来源: 作者: 【 】 浏览:0
Tags:Android 开发 getDrawingCache 方法 获取 ImageView 图像 需要 注意 问题

根据上面的思路,我们可以在开始拍摄前获取ImageView对象中的图像,在保存数据的时候,再次从该ImageView对象中获取图像,然后比较先后所得到的像个图像是否一致,并进行进一步的处理。


从ImageView对象中获取图像的方法是什么呢?


从ImageView对象中获取图像的方法,就是ImageView类中的getDrawingCache()方法,比如下面的代码就是从一个ImageView对象iv_photo中获取图像:


Bitmap obmp = Bitmap.createBitmap(iv_photo.getDrawingCache());


但是需要说明的是:


1. 在调用getDrawingCache()方法从ImageView对象获取图像之前,一定要调用setDrawingCacheEnabled(true)方法:


iv_photo.setDrawingCacheEnabled(true);


否则,无法从ImageView对象iv_photo中获取图像;


2. 在调用getDrawingCache()方法从ImageView对象获取图像之后,一定要调用setDrawingCacheEnabled(false)方法:


iv_photo.setDrawingCacheEnabled(false);


以清空画图缓冲区,否则,下一次从ImageView对象iv_photo中获取的图像,还是原来的图像。



下面,我们就用实际的例子来给予说明。



1. 首先创建一个Android Project,并制定生成一个Activity,取名为Compare2Images


2. 将图片androidlogo.png和xiaocheng.png拖入res/drawable-mdpi文件夹中,它们分别是:




3. 修改main.xml,使之如下


< xml version="1.0"encoding="utf-8" >


"http://schemas.android.com/apk/res/android"


android:orientation="vertical"


android:layout_width="fill_parent"


android:layout_height="fill_parent"


>



"@+id/iv_photo"


android:layout_width="96dip"


android:layout_height="96dip"


android:src="@drawable/androidlogo"


/>



首页 上一页 1 2 3 下一页 尾页 1/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Java的反射(reflect)机制的学习 下一篇Android开发:程序中动态设定组件..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·求navicat for mysql (2025-12-26 13:21:33)
·有哪位大哥推荐一下m (2025-12-26 13:21:30)
·MySQL下载与安装教程 (2025-12-26 13:21:26)
·Linux_百度百科 (2025-12-26 12:51:52)
·Shell 流程控制 | 菜 (2025-12-26 12:51:49)