Android 读取保存在本地的图片 (读取中的一个大坑)
来源:互联网 发布:板绘软件sai 编辑:程序博客网 时间:2024/04/28 21:44
如此简单的问题,结果被纠结了一天,无论怎么搞就是崩溃,将读取路径写死也不可以,但是将其他文件夹的图片贴到这个文件夹就可以读取,文件保存明明是没有问题的,但是就是在用imageview来显示的时候就是会崩溃。最后发现问题所在了,就是在显示的图片的时候用到了Bitmap的一个方法,
createBitmap(Bitmap source, int x, int y, int width, int height, Matrix m, boolean filter)Returns an immutable bitmap from subset of the source bitmap, transformed by the optional matrix.调用这个方法时,并没有对其返回的类型细致的去看,结果出现了这个问题,调用该方法后,返回的是一个不可修改的Bitmap,将其保存在本地后,然后将其读取出来,然后为了防止出现图片过得问题要对其进行修改,所以用到了一个方法就是将该图片作为资源图片,然后创建一个Bitmap图片对其进行显示,根据资源文件创建出一个新的图片出来其实就对原图片的修改,所以说当我们处理到着的时候就会出现错误。
首先是对于图片的获取保存在之前的博客中有写,今天写一下如何将图片读出来,然后将图片的做修改后,贴出来,之前对图片的保存如果保存的是createBitmap获得图片的话将不能够在使用 creatBitmap来创建一个适应屏幕的Bitmap的来进行显示了。
try {
//一个文件输入流,根据指定路径将所需要的图片读取进来。FileInputStream in = new FileInputStream(cursor.getString(2)); bitmap = BitmapFactory.decodeStream(in); Log.i("测试", bitmap+""); try { in.close();} catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace();} } catch (FileNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace(); } //将所获得图片进行处理,然后将图片float scaleWidth = (width - 15)/ ((float) bitmap.getWidth());float scaleHeight = scaleWidth;Matrix matrix = new Matrix();matrix.postScale(scaleWidth, scaleHeight); Bitmap newbm = Bitmap.createBitmap(bitmap, 0,0, bitmap.getWidth(),bitmap.getHeight(),matrix,true); bitmap.recycle(); ImageView image = new ImageView(this); image.setImageBitmap(newbm); LinearLayout.LayoutParams lp1 = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); lp1.leftMargin=5; editContent.addView(image,lp1);通过上述方法,我们就可以将我们从本地获取的图片添加到我们在布局中写的ImageView 中。
0 0
- Android 读取保存在本地的图片 (读取中的一个大坑)
- 读取保存在剪切板中的图片(转)
- android的图片保存和读取
- Android 读取本地图片的缩略图
- Android-在手机本地保存数据和读取数据
- scipy在图像中的读取和保存图片功能
- android 读取本地超大图片
- android读取手机本地图片
- 介绍一个可以读取保存在程序集里面的图片资源的小工具
- Android 选取图片、手机拍照以及保存图片到本地、读取图片
- android 读取本地或网络图片,转换为Bitmap 并保存本地中
- 详解Android读取本地图片和网络图片的方法
- 读取本地存储的图片
- android读取本地资源图片的一个方法返回值是Bitmap
- 远程读取,本地保存
- java读取本地图片和下载可选择路径保存图片
- Android文件的保存(本地和SD卡)与读取
- java 读取并保存excel中的图片
- Cocos2dx v3.2骨骼动画加载学习
- Android Adapter适配器
- SQL Server跨服务器建立视图
- android.view.WindowManager.LayoutParams.flags
- Heritrix Eclipse下环境配置
- Android 读取保存在本地的图片 (读取中的一个大坑)
- 关于“缓存着色(cache coloring, page coloring)”技术的相关资料介绍
- 《Effective C++ 》学习笔记——条款09
- 临沂治疗白癜风费用是多少钱
- 2005 Histograms of Oriented Gradients for Human Detection(Navneet Dalal et al)读后感
- 那些年用过的swap函数
- Android之NDK开发
- Mysql中前边有0的数据,0会被舍去的问题
- django NoReverseMatch url' requires a non-empty first argument. The syntax changed in Django 1.5, s