无法解码图像.提供的图像必须是位图.- 与巴布亚新几内亚



我目前正在学习优步克隆的教程,在这一部分

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

当我们将汽车的标记添加到当前位置以将其从一个点移动到另一个点时,应用程序崩溃并且 debbuger 说"无法解码图像。提供的图像必须是位图"。
"汽车"图像是可绘制文件夹中的 png 文件,我已经尝试了一些解决方案作为 android 谷歌地图中的自定义标记,带有矢量资产图标等,但没有一个真正解决。

谁能在这里帮忙?对我来说,看起来一切都很好:图像是一个 png 文件,它在可绘制文件夹中,为什么不考虑作为位图?

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

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

最新更新