Problème affichage ListView
Bonjour !
Voilà j'arrive à créer une ListView avec un élément. Et j'ai mis un listener sur cette liste. Je veux que, quand je clik sur un élément, cet élément change. Moi quand je clik sur un élément, la liste suivante est vide.
Voilà mon code :
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 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112
|
package com.android.webtrack;
import java.io.File;
import java.util.ArrayList;
import java.util.HashMap;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.NodeList;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.AdapterView.OnItemClickListener;
public class SelectionIncidentsActivity extends Activity {
/*
* Préparation de notre listview
*/
private ListView lv1;
@Override
public void onCreate(Bundle icicle)
{
super.onCreate(icicle);
setContentView(R.layout.main_anomalies);
//Récupération de la listview créée dans le fichier main.xml
lv1 = (ListView) findViewById(R.id.ListView01);
//Création de la ArrayList qui nous permettra de remplire la listView
final ArrayList<HashMap<String, String>> listItem = new ArrayList<HashMap<String, String>>();
//On déclare la HashMap qui contiendra les informations pour un item
HashMap<String, String> map;
map = new HashMap<String, String>();
map.put("nom", "Toutes les anomalies");
map.put("img", String.valueOf(R.drawable.inc));
listItem.add(map);
//Création d'un SimpleAdapter qui se chargera de mettre les items présent dans notre list (listItem) dans la vue affichageitem
final SimpleAdapter mSchedule = new SimpleAdapter (this.getBaseContext(), listItem, R.layout.liste_anomalies,
new String[] {"img", "nom"}, new int[] {R.id.imgAnomalie, R.id.nomAnomalie});
//On attribut à notre listView l'adapter que l'on vient de créer
lv1.setAdapter(mSchedule);
//Enfin on met un écouteur d'évènement sur notre listView
lv1.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> a, View v, int position, long id) {
//on récupère la HashMap contenant les infos de notre item (titre, description, img)
@SuppressWarnings("unchecked")
HashMap<String, String> map = (HashMap<String, String>) lv1.getItemAtPosition(position);
//on créer une boite de dialogue
if (position == 0){
map.clear();
listItem.clear();
map = new HashMap<String, String>();
map.put("nom", "Bien joué");
map.put("img", String.valueOf(R.drawable.inc));
listItem.add(map);
lv1.setAdapter(mSchedule);
setContentView(R.layout.main_anomalies);
}
}
});
}
protected HashMap<String, String> getItemAtPosition(int position) {
// TODO Auto-generated method stub
return null;
}
} |