我对Java比较陌生,所以请耐心听我说。
我正在完成一个关于LWUIT的教程,只想加载一个使用编辑器创建的简单主题。下面是有问题的代码:
try
{
Container container = c.getContainer();
container.setVisible(true);
Display.init(container);
Display.getInstance().setPureTouch(true);
//Resources r = Resources.open(getClass().getResourceAsStream("/res/Theme.res"));
Resources r = Resources.open("/res/Theme.res");
UIManager.getInstance().setThemeProps(r.getTheme("Simple"));
}当我使用第一个(注释掉的)语句时,我得到
*** Signal: alarm { "name":"XletException", "domain":"ams", "appId":"com.thomasdge.xlet.hellojamaica.HelloJamaica", "msg":"XletAction['initXlet'] resulted in exception com.aicas.xlet.manager.AMSError: running xlet code caused java exception: initXlet() resulted in exception: java.lang.NullPointerException: <null>.read()I", "data":{ } }当我使用另一个时,我会得到
java.io.IOException: /res/Theme.res not found我的主题文件在/res/ Theme.res中。我也尝试过直接在根目录和/src中使用它。每种方法都有相同的结果。
有什么想法吗?
发布于 2012-03-07 16:31:18
如果你把res文件放在那个文件夹里,你需要再往下一层。我建议您将res放在src文件夹中。所以,/src/Theme.res。在代码中,您只需编写
Resources r = Resources.open("/Theme.res");
发布于 2012-03-09 21:37:44
如果资源文件放在res文件夹中,则需要在项目属性中添加res文件夹。你也提到了这个问题,即使在/src文件夹中,我觉得你也没有改变路径。使用/src文件夹时只需使用Resources.open("/Theme.res")即可。还要检查主题名称。这应该是可行的。
https://stackoverflow.com/questions/9588769
复制相似问题