我想下載一堆圖像並想將其作爲drawable存儲在數組中。所以我嘗試聲明一個可繪製的數組,但是當我訪問該數組時,它返回異常nullPointer
。如何在數組中存儲drawable
我的問題是,如何將數組類型聲明爲drawable?
我想下載一堆圖像並想將其作爲drawable存儲在數組中。所以我嘗試聲明一個可繪製的數組,但是當我訪問該數組時,它返回異常nullPointer
。如何在數組中存儲drawable
我的問題是,如何將數組類型聲明爲drawable?
可繪製的數組定義應該像:
int numDrawables = 10;
Drawable[] drawableArray = new Drawable[numDrawables];
,填補了數組:
for(int i = 0; i < numDrawables; i++){
// get a drawable from somewhere
Drawable drawable = new Drawable();
drawableArray[i] = drawable;
}
訪問數組:
Drawable aDrawable = drawableArray[0];
這是基本的Java,如果你得到空指針異常,你做錯了什麼。
我多麼愚蠢。我完全忘了初始化我的數組。這是唯一的錯誤。非常感謝。 – 2011-06-03 04:28:47
您可以使用HashMap和把鑰匙作爲網址,例如,和值是你下載的繪製:
HashMap<String,Drawable> myDrawables = new HashMap<String,Drawable>();
//before you download the images, you can test if your drawable is already downloaded,
// with looking for his url in the Hashmap ,
.....
myDrawables.put(urlOfYourDrawable, yourDrawable);
如果你想存儲的元素列表(任何類型)動態地使用集合中的類。爲什麼因爲數組大小是靜態的。 示例:
ArrayList<Generic> list=new ArrayList<Generic>();
list.add(Generic);
向我們展示您的初始聲明和初始化。我敢打賭,它沒有正確初始化。 – Geobits 2011-06-02 10:46:20
你如何將圖像存儲在數組中 - 共享代碼 – varuaa 2011-06-02 10:46:32
Drawable []圖像; InputStream is =(InputStream)new URL(url).getContent(); draw [i] = Drawable.createFromStream(is,「src name」); – 2011-06-02 10:49:29