一起Talk Android吧(第四百六十二回:对drawable中获取到的Bitmap进行缩放)

Posted talk_8

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一起Talk Android吧(第四百六十二回:对drawable中获取到的Bitmap进行缩放)相关的知识,希望对你有一定的参考价值。

文章目录


各位看官们大家好,上一回中咱们说的例子是"再谈从drawable中获取Bitmap",这一回中咱们说的例子是" 对drawable中获取到的Bitmap进行缩放"。闲话休提,言归正转,让我们一起Talk android吧!

使用背景

看官们,我们在上一章回中介绍了如何从Drawable中获取Bitmap,限于篇幅原因,还有一部分知识没有介绍,其实已经有看官在提问了:使用BitmapFactory的静态方法可以对Bitmap进行缩放,如何对Drawable中获取到的Bitmap进行缩放?本章回中将回答这个问题。

使用方法

把获取到的Bitmap文件放到指定大小的位置上,进而实现缩放的效果。不过这要借助drawBitmap()方法才能实现。接下来我们通过文字结合代码的方式来演示。

示例代码

//获取Bitmap的尺寸
int width = mBitmap.getWidth();
int height = mBitmap.getHeight()
//使用Bitmap的尺寸创建一个和Bitmap尺寸相同的Rect对象
Rect src = new Rect(0, 0,width,height);
//使用Bitmap的尺寸创建一个对Bitmap尺寸进行缩放的Rect对象:dst
Rect dst = new Rect(0, 0, width*2,height*2);
//通过dst对象来缩放图片,使图片依据dst的尺寸进行缩放
canvas.drawBitmap(mBitmap, src, dst, mBitmapPaint);

代码中的使用了Canvas类的drawBitmap()方法,这是整个操作的核心内容,该方法是一个重载方法,不要选错就可以。

代码中添加了详细的注释,方便大家理解代码,我们自定义一个控件并且把此段代码放到控件的onDraw()方法中就可以正常使用,通过自定义的控件可以把Drawable中的图片通过控件呈现出来。我在这里就不演示程序的运行效果了,希望大家自己动手去实践。

此外,本章回的内容可以看作是上一章回内容的扩展,希望大家把两个章回的内容放在一起阅读,这样可得到完整的知识。

看官们,关于"对drawable中获取到的Bitmap进行缩放"的例子咱们就介绍到这里,欲知后面还有什么例子,且听下回分解!

以上是关于一起Talk Android吧(第四百六十二回:对drawable中获取到的Bitmap进行缩放)的主要内容,如果未能解决你的问题,请参考以下文章

一起Talk Android吧(第四百六十回:SeekBar源代码分析)

一起Talk Android吧(第四百六十五回:自定义View的思路)

一起Talk Android吧(第四百六十一回:再谈从drawable中获取Bitmap)

一起Talk Android吧(第四百六十八回:实现自定义View中的布局功能)

一起Talk Android吧(第四百六十九回:实现自定义View中的绘制功能)

一起Talk Android吧(第四百六十七回:实现自定义ViewGroup中的测量功能)