2011-03-30 30 views
0

我用下面的代碼雖然是沒有得到檢測的資源從「資源」文件夾與NetBeans在Java中訪問圖像ME

imgWelcome = Image.createImage("/cover.png"); 
img = new ImageItem(null, imgWelcome, ImageItem.LAYOUT_CENTER, ""); 

訪問圖像和我不斷獲取NullPointerException異常。聽起來很奇怪,在我之前的程序中完全一樣。

我在這裏做錯了什麼?

P.S.我已經仔細檢查了res文件夾中是否存在文件

+0

該圖像是否顯示在你的ide的res文件夾中?如果不是 - > f5 ide的文件夾 – Vincent 2011-03-31 09:37:03

回答

0

哦哇..這是因爲我的模擬器不支持.png。而我所嘗試的是什麼:(

0

可能有很多原因,但我發現大部分時間都是由於項目的構建。某些構建腳本將res/文件夾中的資源作爲頂級文件包含在內,並且一些包含該文件夾作爲jar文件中的文件夾。

我一直在做的解決問題的方法是將jar輸出重命名爲zip並查看內部。如果圖像文件包含在文件夾中,那麼您應該像這樣解決它們。

+0

在我的情況下,jar包含的圖像不在任何文件夾內。 ? – mihsathe 2011-03-30 11:36:11

+0

Himmm ...我想你應該嘗試訪問它:'Image.createImage(「cover.png」)'。 – paracycle 2011-03-30 12:03:55

+0

這是行不通的.btw我的代碼是在一個不同的包默認的。 – mihsathe 2011-03-30 12:07:29

0

您的代碼不會找到cover.png如果是在/res文件夾

使用7-Zip或類似的方法檢查罐子的內容,確保圖像確實在/res文件夾中,然後用imgWelcome = Image.createImage("/res/cover.png");替換第一行。