Ajouter une saisie utilisateur sur une ListView
Bonsoir,
Je débute actuellement sur la programmation Android et je me retrouve devant un problème :
J'aimerais pouvoir ajouter sur une ListView une saisie utilisateur (EditText) lorsque ce dernier appui sur un bouton.
Le problème c'est que lorsque que j'appui sur ce bouton l'application crash :?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
public class CoursesAfaire extends Activity
{
private Button valider ;
String[] listeDesProduits = new String[] {};
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.courses_a_faire);
valider = (Button)findViewById(R.id.bouton_valider);
EditText nouveauProduit = (EditText)findViewById(R.id.edit_article_ajouter);
final String texteNouveauProduit = nouveauProduit.getText().toString();
valider.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
listeDesProduits[1] = texteNouveauProduit ;
}
});
//Création de l'adapter
ArrayAdapter<String> adapterLaListe = new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1, listeDesProduits);
//Récupération du ListView présent dans notre IHM
ListView list = (ListView)findViewById(R.id.liste_courses);
//On passe nos données au composant ListView
list.setAdapter(adapterLaListe);
}
} |
Sur la ligne " listeDesProduits[1] = texteNouveauProduit ; " je veux écrire sur la première case (qui correspondra à la première ligne de la liste) le texte saisie par l'utilisateur mais je pense que la manière dont je le fais n'est pas bon, surtout lorsque que l'utilisateur voudra ajouter un autre mot...
Est ce que quelqu'un pourrait m'aiguiller sur la façon de procéder ? :D
Merci d'avance