0
我現在正在製作一個應用程序,解析一個url並從中獲取一些信息。我想使用這個值來創建對象,將它們放入一個數組列表中,並使用ListView佈局在屏幕上顯示它們。創建對象並設置其變量時出現問題
問題出現時,我想繪製對象的drawables值。根據它的值,我想要一個drawable或另一個。下面是代碼:
Retransmision retransmision = new Retransmision();
retransmision.setIdioma(idioma);
retransmision.setTipo(tipo);
retransmision.setCalidad(calidad);
retransmision.setLink(link);
retransmision.setImagenLogo(tipo);
retransmision.setImagenCalidad(calidad);
retransmisionesDescargadas.add(retransmision);
我只是創建對象併爲它的方法賦值。由於我使用爲似乎運作良好方法setImagenLogo類似的代碼
public void setImagenCalidad(int calidad) {
if (calidad == 0) {
imagenCalidad = context.getResources().getDrawable(R.drawable.desconocida);
} else if(calidad <= 250) {
imagenCalidad = context.getResources().getDrawable(R.drawable.baja);
} else if(calidad <= 500) {
imagenCalidad = context.getResources().getDrawable(R.drawable.media);
} else if(calidad <= 750) {
imagenCalidad = context.getResources().getDrawable(R.drawable.alta);
} else if(calidad <= 1000) {
imagenCalidad = context.getResources().getDrawable(R.drawable.muy_alta);
} else {
imagenCalidad = context.getResources().getDrawable(R.drawable.excelente);
}
}
奇怪:和繼承人的方法至極拋出NullPointerException異常。唯一不同的是獲得一個String參數。另一個int。
PS:如果它可能會幫助,這是retransmision對象及其變量的構造函數:
Context context;
private String idioma;
private String tipo;
private int calidad;
private String link;
private Drawable imagenLogo;
private Drawable imagenIdioma;
private Drawable imagenCalidad;
public Retransmision() {
idioma = "";
tipo = "";
calidad = 0;
link = "";
imagenLogo = null;
imagenIdioma = null;
imagenCalidad = null;
}
正如你所說,問題似乎是在上下文中。最後,使用參數創建了一個構造函數,現在它工作正常。多謝。 – Duqe 2011-01-24 17:52:22