BitmapFactory.Options 对象添加在哪里呢
时间: 2024-03-14 12:48:38 浏览: 64
`BitmapFactory.Options` 对象应该添加在您调用 `BitmapFactory.decodeFile()` 方法之前,用于配置图片加载选项。您可以像下面这样创建 `BitmapFactory.Options` 对象,并设置其中的选项:
```java
BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
BitmapFactory.decodeFile(imageUri.getPath(), options);
int imageHeight = options.outHeight;
int imageWidth = options.outWidth;
String imageType = options.outMimeType;
options.inJustDecodeBounds = false;
options.inSampleSize = calculateInSampleSize(options, reqWidth, reqHeight);
Bitmap bitmap = BitmapFactory.decodeFile(imageUri.getPath(), options);
```
其中:
- `inJustDecodeBounds` 设置为 `true`,表示在加载图片时只获取图片的宽、高等信息,而不加载图片的实际内容。
- `inSampleSize` 表示缩小图片的采样率,可以减少内存占用。例如,设置 `inSampleSize=2`,则图片的宽、高会缩小为原来的一半。您可以使用 `calculateInSampleSize()` 方法来计算一个适当的采样率。
最后,您可以使用 `BitmapFactory.decodeFile()` 方法来加载经过处理的图片,例如上面的示例代码中的 `bitmap` 对象。
阅读全文