Bonjour ,
J'aurais un souci concernant un : NullPointerException.
Je m'explique , je programme une application qui quand elle démarre arrive sur un écran d'acceuil ou l'on choisi :
- BUTTON 1 (vers : Begin.java): Importe une database(sqlite) , de ASSETS vers /data/data/package/databases/.(la tout va bien l'importation etc se fait bien)
- BUTTON 2 (Vers : List.java): Affichage de champs de la database (nom et prenom)
Et c'est dans le deuxième affichage List.java que j'aurais un souci.
Quand c'est pour afficher une liste Statique aucun problème.
Du style :
Mais quand j'essaye de faire apparaitre les champs "nom" et "prenom" ... j'ai des erreurs...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 public class List extends Activity implements OnClickListener { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.second); ListView lv1 ; final String lv_arr[]={"Android","iPhone","BlackBerry","AndroidPeople","Symbian", "Soleil"}; lv1=(ListView)findViewById(R.id.list); lv1.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1 , lv_arr)); Button button = (Button)findViewById(R.id.button1); button.setOnClickListener(this); } @Override public void onClick(View v) { finish(); } }
Décryptage :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Caused by : java.lang.NullPointerException at com.importdatabase.DataseHelper.getPersonnes(DatabaseHelper.java:136) at com.importdatabase.List.onCreate(List.java:19)
Donc pour la ligne 136 : databaseHelper.java
pour la ligne 19 : List.java
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 public ArrayList<String> getPersonnes() { ArrayList<String> output = new ArrayList<String>(); String[] colonnesARecup = new String[] { "nom", "prenom" }; Cursor cursorResults = mydb.query(TABLE_LISTELEC, colonnesARecup, null, null, null, null, "nom asc, prenom asc", null); while (cursorResults.moveToFirst()) { output.add(cursorResults.getString(0) + " " + cursorResults.getString(1)); } return output; }
Merci à vous ,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 public class List extends Activity implements OnClickListener { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.second); DatabaseHelper dbh = new DatabaseHelper(this.getApplicationContext ()); ListView lvListe = (ListView)findViewById(R.id.listView1 ); lvListe.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,dbh.getPersonnes())); Button button = (Button)findViewById(R.id.button1); button.setOnClickListener(this); } @Override public void onClick(View v) { finish(); } }
Cordialement ,
Partager