我正在尝试绘制EncodedImage
和图形。我看了this,我仍然遇到了一些问题。我做错了什么?
InputStream imageIn = Display.getInstance().getResourceAsStream(getClass(), GraphicsController.errorImgPath);
try {
g.drawImage(EncodedImage.createImage(imageIn), 50, 50);
} catch (IOException e) {
e.printStackTrace();
}
出现此错误:
ERROR: resources must reside in the root directory thus must start with a '/' character in Codename One! Invalid resource: errorImage.png
java.lang.IllegalArgumentException: input == null!
答案 0 :(得分:0)
errorImagePath应该类似/MyImage.png
,不能是MyImage.png
或/com/mypackage/MyImage.png
。
然而,你正在做的事情可能非常糟糕......你正在为每个绘图paint()
回调加载图像,这可能非常昂贵,因为加载图像需要时间。我建议事先将图像加载到RAM并单独绘图。