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

Android 将本地资源图片转换成Drawable,进行设置大小操作

程序员文章站 2022-03-20 19:13:33
前言:因为项目中显示图片是用picasso,设置placeholder和error图片的时候发现,本地图片的大小无法满足我的需求,需要先对图片大小改变再显示。picasso的placeholder和e...

前言:

因为项目中显示图片是用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,进行设置大小操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。