Android 将本地资源图片转换成Drawable,进行设置大小操作
前言:
因为项目中显示图片是用picasso,设置placeholder和error图片的时候发现,本地图片的大小无法满足我的需求,需要先对图片大小改变再显示。
picasso的placeholder和error的参数也只有int resid和drawable drawable
于是打算将改变过大小的drawable传进入显示,咦,效果很满意!
整个过程的思路:
将本地图片(r.drawable.image)变成drawable对象
将drawable对象转换成bitmap对象
将bitmap对象根据指定大小创建一个新的bitmap对象
将bitmap对象转换成drawable对象
代码:
1. 将本地图片(r.drawable.image)变成drawable对象
drawable drawable = contextcompat.getdrawable(context, r.drawable.image);
2. 将drawable对象转换成bitmap对象
3. 整个流程的执行
后来发现一个更简洁的方法
原来复杂的思路
学习中遇到的问题
看网上的教程是没有下面
这段代码的。
假如我指定的宽高是200,生成的drawable的宽高却只有100。
原来bitmap转换成drawable的尺寸是会变小的。
那段代码就能解决尺寸变小的问题。
如果路过的大神有更好的方法,希望能指点一下小白。
补充知识:android中如何将res里的图片转换成bitmap.
1.复制代码即可:
resources res = mainactivity.this.getresources();
bitmap bmp= bitmapfactory.decoderesource(res, r.mipmap.flower);
以上这篇android 将本地资源图片转换成drawable,进行设置大小操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
上一篇: 块级元素和行级元素的区别和认识
下一篇: 通过法律手段起诉恶意营销号