在实际应用开发中,我们可以将一个图像文件,指定显示按照屏幕的大小进行显示,或者对指定的图像文件进行裁剪的功能。下面我们就来学习一下使用ImageView实现图片裁剪和显示的功能
1. 在讲这部分内容之前,我们需要补充一些知识点:
1) 首先是Android的BitmapFactory类:从不同的资源,包括文件,流,和字节数组中创建一个Bitmap对象。查看Android api文档:BitmapFactory,它带有一个匿名内部类[重要]:如下所示,其中这个类表示裁剪图片
这个匿名内部类很重要,主要是完成一些裁剪的功能
2) 我们在ImageView中显示图片的信息,它不但可以显示一张图片的信息,它还可以显示一个有字节数组等解码后的一张图片,它们一般是在 BitmapFactory中获得的.
从BitmapFactory 中的方法我们可以看出这好比一个工厂模式中工厂角色类,它提供了很多方法来生成Bitmap对象,比如
public static Bitmap decodeByteArray (byte[] data, int offset, int length, BitmapFactory.Options opts)