我正在使用滑动来在图像视图中加载图像,但是在图像视图中显示图像需要花费大量时间。我在图像视图中从我的自定义相机加载图片。每件事都有效,但这里需要花费大量时间才能加载图片:
private void show_image_from_custom_camera(byte[] data) {
bitmap_image = BitmapFactory.decodeByteArray(data, 0, data.length);
ByteArrayOutputStream stream = new ByteArrayOutputStream(); bitmap_image.compress(Bitmap.CompressFormat.JPEG, 70, stream);
int screenWidth = width;
int screenHeight = height;
Glide.with(this)
.load(data)
.asBitmap().centerCrop()
.into(new SimpleTarget<Bitmap>(width,height) {
@Override
public void onResourceReady(Bitmap resource, GlideAnimation<? super Bitmap> glideAnimation) {
// you can do something with loaded bitmap here
// .....
int w = resource.getWidth();
int h = resource.getHeight();
// Setting post rotate to 90
Matrix mtx = new Matrix();
mtx.postRotate(90);
// Rotating Bitmap
Bitmap realImage = Bitmap.createBitmap(resource, 0, 0, w, h, mtx, true);
photo_setter.setImageBitmap(realImage); //setting the image in image-view
}
});
}
有什么能减少这段时间吗?我希望以更快的速度在图像视图中显示图像。
答案 0 :(得分:0)
感谢Belzebub。我犯了一个严重的错误,我忘了删除代码的前三行:
bitmap_image = BitmapFactory.decodeByteArray(data, 0, data.length);
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bitmap_image.compress(Bitmap.CompressFormat.JPEG, 70, stream);
没有它们一切都工作正常我正在以更快的速度在图像视图中加载图像现在我保留这篇文章以便任何人都想在Camera.PictureCallback上的图像视图中加载图像可以使用此代码而不需要前3行。