2011-01-24 119 views
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; 
    }

回答

0

,可能是空存在context的唯一的事......我看你沒」在構造函數中初始化它。也許這是你想要的:

public Retransmision(Context ctx) { 
    idioma = ""; 
    tipo = ""; 
    calidad = 0; 
    link = ""; 
    imagenLogo = null; 
    imagenIdioma = null; 
    imagenCalidad = null; 
    context = ctx; 
} 
+0

正如你所說,問題似乎是在上下文中。最後,使用參數創建了一個構造函數,現在它工作正常。多謝。 – Duqe 2011-01-24 17:52:22