Bitmap可以理解为通过一个bit数组来存储特定数据的一种数据结构。
一,二次采样的意义和目的;
当网络访问加载图片的时候,我们会遇到OOM异常。这是因为图片过大产生的。想要正确使用则需要分配更少的内存空间。
1、首先看下bitmapFactory.decodeFile(imageFile,option)和bitmapFactory.decodeFile(imageFile);
返回的都Bitmap对象。第一个方法法是根据根据图片地址和参数来返回一个Bitmap对象,第二个方法根据图片的url来返回Bitmap.
2、为了设置图片的裁剪要了解、BitmapFactory.Options.inSampleSize
来设置宽高的比例。(个人理解就是:拿到图片的以前宽高和现在的宽高,算出比例可以往下看下代码)
BitmapFactory.Options bop=new BitmapFactory.Options() ;
bop.inSampleSize=4;
BitmapFactory.decodeFile("path",bop);
3.还有一个关于BitmapFactory.Option.inJustDecodeBounds,true为不分配控件。
是为了管理系统是否为BitmapFactory.decodeFile("uri",option)返回的Bitmap分配空间。可以设置true和false.
看完上面的一个方法和两个属性。下面具体写下代码
/**
* 把二次裁剪封装一个方法。
*/
private Bitmap createImag