android - 将图像从画廊滑到位图变量
问题描述
我有一个变量Bitmap image
。我imageButton
的片段中有。imageButton
我可以用改变图像Glide.with().load().into()
。但我不仅要更改图像,还要将其保存到Bitmap
变量中,以便可以将其用于其他任务。我试过这个
Bitmap image = Glide.with(getContext()).asBitmap().load(imagePath).submit().get();
imageButton.setImageBitmap(image);
但 imageButton 的图像不会改变。那么第一行有什么问题?因为我很确定问题存在,但还不明白到底出了什么问题。
一个解决方案是做
Bitmap image = BitmapFactory.
decodeStream(getContext().
getContentResolver().
openInputStream(selectedImage));
imageButton.setImageBitmap(image);
selectedImage
方法在哪里Uri selectedImage = data.getData()
,onActivityResult
但是由于位图的大小,它会一团糟,所以我们必须使用createScaledBitmap
,我不喜欢它。由于某种原因Bitmap image = BitmapFactory.decodeFile(imagePath)
不起作用,imageButton 只是变成了灰色的小方块,我没有找到解决方案。
解决方案
我不知道你是否应该考虑在一些严肃的项目中这样做,但现在它完成了我需要做的事情。早些时候我宣布private Bitmap jopa
.
Glide.with(getContext()).asBitmap().
load(selectedImage).override(500,500).
into(new CustomTarget<Bitmap>()
{
@Override
public void onResourceReady(@NonNull Bitmap resource, @Nullable Transition<? super Bitmap> transition) {
imgShare.setImageBitmap(resource);
jopa = ((BitmapDrawable)imgShare.getDrawable()).getBitmap();
}
@Override
public void onLoadCleared(@Nullable Drawable placeholder) {
}
});
现在Bitmap jopa
可以用于其他任务。我希望。测试它以更改另一个图像视图的图片,它有效,所以我会祈祷它会进一步工作。完整onActivityResult
代码在这里。不想让问题变得太混乱
推荐阅读
- python-3.x - 在 Linux Python 3.8.5 上安装 Discord.py
- java - NoClassDefFoundError: io/restassured/RestAssured 发生错误
- c# - blazorise中发生悬停伪类时如何显示下拉列表?
- docker - 如何将构建 docker 容器的命令放入 dockerfile?
- javascript - 在单行 JavaScript 中创建后撤销 blob URL
- python - 在 Python 中的列表中查找子字符串
- javascript - JavaScript 算法题:从一个数组中找出总和最大的连续子数组
- excel - 删除 seriescollection 数据标签
- javascript - 带有条件数组的JavaScript多条件过滤?
- c# - 检查excel每个单元格是否为空