Я учусь открывать вакансии на Android SQLite.Я хочу отобразить текст счетчика, заполненный курсором.Проблема при использовании:
nameOfSPinner.getSelectedItem().toString();
Он отображает номера выбранного индекса, а не данные.
Чтобы решить эту проблему, я подумал, что могу взять всю информацию и сохранитьэто в массиве объектов, затем заполните счетчик этой информацией.(Есть ли лучший подход?)
К тому времени, когда я беру то, что написано в индексе, и отображаю его в объекте, мое приложение вылетает с NullPointerException
.Я чувствую, что есть базовое объектно-ориентированное программирование, которое я не понимаю, но ничего не вижу.
public Objet[] getObjetDescription2(){
Cursor c = bdd.query("nom de la table", new String[] {"rowid _id", "description", "id"},null, null, null, null, null);
return nomFonction(c);
}
private Objet[] nomFonction(Cursor c){
//si aucun élément n'a été retourné dans la requête, on renvoie null
if (c.getCount() == 0)
return null;
//Sinom on se place sur le premier élément
c.moveToFirst();
int compteur = c.getCount();
Objet[] objet = new Objet[100];
int i = 0;
do{
//on lui affecte toutes les infos grâce aux infos contenues dans le Cursor
objet[i].setDescription(c.getString(2));
objet[i].setId(c.getInt(1));
i++;
}while(i >= compteur);
//On ferme le cursor
c.close();
return objet;
}