Android getResource() 未定义错误

2024-01-05

我想在 MyPositionOverlay 扩展 Overlay 类中的绘制方法上绘制位图,但出现此错误: The method getResource() is undefined for the type MyPositionOverlay

我哪里错了?

这是绘制方法的代码:

  Bitmap bmp = BitmapFactory.decodeResource(getResource(), R.drawable.icon); 
     canvas.drawBitmap(bmp, screenPts.x, screenPts.y-50, null);

Thanks


getResources() 方法不是 Overlay 类的成员。 getResources() 是 Context 类的成员。您需要将 Context 的引用传递给 Overlay 子类,以便它可以加载 Drawable 资源:

Bitmap bmp = BitmapFactory.decodeResource(context.getResources(), R.drawable.icon); 

您也不想在绘制方法中加载位图,因为它非常占用内存并且会减慢应用程序的速度,您应该在覆盖层的构造函数中保存位图的成员变量,以便它只加载一次。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android getResource() 未定义错误 的相关文章

随机推荐