当前位置: 首页 > 知识库问答 >
问题:

无法解码图像。提供的图像必须是位图。-使用PNG

扈高逸
2023-03-14

我目前正在遵循优步克隆教程,在这一部分

 carMarker = mMap.addMarker(new MarkerOptions()
                     .position(currentPosition)
                     .flat(true)
                     .icon(BitmapDescriptorFactory.fromResource(R.drawable.car)));

在我们将汽车的标记添加到当前位置以将其从点移动到点的情况下,应用程序崩溃,而Debbuger说“未能解码图像。提供的图像必须是位图”。
“汽车”图像是可绘制文件夹内的png文件,我尝试了一些解决方案作为android中带有矢量资产图标和其他的谷歌地图中的自定义标记,但实际上没有一个解决方案。

有人能帮忙吗?对我来说,看起来一切都很好:图像是一个png文件,它位于可绘制文件夹中,为什么不将其视为位图?

共有2个答案

封飞
2023-03-14

试试这个。将PNG图像转换为jpg格式,并确保图像的分辨率不太高。我也有同样的经历,然后我用jpg处理低分辨率图像。

秦安宁
2023-03-14

我找到了答案。在drawable文件夹中粘贴car文件时,Android Studio会提供可绘制源文件夹的选项来保存它,默认选项是“drawable-v24”文件夹aa,而R.drawable会在“drawable”文件夹中获取图像。因此,在粘贴图像时,它需要从“drawable-v24”更改为“drawable”,这将起作用。

 类似资料:
  • 无法解码图像。提供的图像必须是位图。但在日志中,我得到了com。谷歌。Androidgms。地图。模型BitmapDescriptor@58e0ee6:com。谷歌。Androidgms。地图。模型GroundOverlayOptions@1ea9c27 此外,我将jpg图像转换为bmp,在这里转换失败后 请帮忙。

  • 我正在处理位图图像的透明部分用洋红色着色(在一些语言中,可以将颜色设置为透明)。我试图在原始位图图像中透明洋红色的像素。 我从SD卡加载位图: 将其复制到另一个位图以使其可变: 然后逐像素扫描,找到洋红色的像素,并尝试改变它们的透明度。 但是那些我希望变成透明的像素被转换成黑色。通过更改alpha,我发现最终颜色从中提到的颜色(不提及alpha)变为黑色。例如,变为白色,为灰色,而变黑。 我不知道

  • 我使用滑翔库来显示网格视图中的图像,但是在我的图像视图中显示了注释。 E/Glide:class com。邦普泰克。滑行负载发动机GlideException:无法加载资源 我的代码在使用位图时工作正常。这是我的密码:

  • 我有docker,但它与我的Fedora 31有冲突,我不得不删除docker: dnf删除docker-ce rm-rf/var/lib/docker 因为Podman更适合合作。但是在跑步之后 dnf安装播客 我的系统上安装了docker和postman。因此,在使用命令时: Podman拉软呢帽:最新款 这个日志出现了,这似乎是一种冲突 我试图删除docker,但bash将其与podman一

  • 顺便说一句,我使用的是Python 3.8、Chrome 81.0.4044.122和Selenium的最新版本。 到目前为止,我使用:

  • 顺便说一句,我使用Python 3.8、Chrome 81.0.4044.122和最新版本的Selenium。 到目前为止,我使用:单击button,然后找到一个具有图像而不是文本的登录按钮。我尝试了XPath、CSS选择器、id、名称、文本链接、ActionChains(move_to)什么都不起作用。 下面是HTML:请点击我。 如何找到图像按钮的正确XPath并单击它? driver.fin