Bonjour,
le code ci-joint fonctionne correctement.
je veux récuperer par un onItemlongClick la valeur de la ListView. j'ai essayé
pas mal de méthode sans résultat.
pouvez vous m'aiguiller
ci-joint mon code
le nom de la base et le package ont été enlever volontairement

AccesBD.java
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
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
 
package ;
 
 
import android.app.TabActivity;
import android.os.Bundle;
import android.view.ContextMenu;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ListView;
import android.widget.TabHost;
import android.widget.Toast;
 
public class AccesBD extends TabActivity    {
 
	DatabaseHelper db;
 
 
 
	/**
     * Met à jour la liste  au démarrage de l'activite
     */
 
    public void updateList() {
        DatabaseHelper dbCon = new DatabaseHelper(this);
        final ListView listeNom = (ListView) this.findViewById(android.R.id.list);
        ArrayAdapter<String> adapter = new ArrayAdapter<String>(
                                                            this,
                                                          android.R.layout.simple_list_item_1,
                                                            dbCon.getconcession()
                                                            );
        listeNom.setAdapter(adapter);
 
    }
 
//création du context menu
    public void onCreateContextMenu(ContextMenu menu, View v,
                                    ContextMenuInfo menuInfo) {
     super.onCreateContextMenu(menu, v, menuInfo);
      MenuInflater inflater = getMenuInflater();
      inflater.inflate(R.menu.menucontextuel, menu);
    }
 
//selection d'un item du menu
    @Override
    public boolean onContextItemSelected(MenuItem item) {
    	AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) item.getMenuInfo();
      switch (item.getItemId()) {
      case R.id.itemsupp:
 
    	  //Toast.makeText(this, "selection : "+item1, Toast.LENGTH_LONG).show();
    	  Toast.makeText(this, "selection "+info+"  ", Toast.LENGTH_LONG).show();
   // 	  db.supprimerConcession(info.id);
      break;
      default:
        return super.onContextItemSelected(item);
      }
      return true;
    }
 
 
 
	protected void onDestroy() {
     	db.close();
     	super.onDestroy();	 }
 
	 public void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.ecran1);
         db = new DatabaseHelper(this);
         updateList();
 
         registerForContextMenu((ListView)findViewById(android.R.id.list));
 
 
	 // Mise en place des onglets
	    {
	        TabHost monTabHost = getTabHost();
	        monTabHost.addTab(
	                monTabHost.newTabSpec("tab1")
	                .setIndicator("Ajouter une Concession")
	                .setContent(R.id.tabAjoutconcession)
	                );
	        monTabHost.addTab(
	                monTabHost.newTabSpec("tab2")
	                .setIndicator("Liste des Concessions")
	                .setContent(R.id.tabListeconcession)
	                );
	        monTabHost.setCurrentTab(0);
 
	    }
 
        // Mise en place de la gestion des événements
        {
            Button btnCreer = (Button) findViewById(R.id.btnCreer);
            btnCreer.setOnClickListener(new BtnCreer(this));
        }
        {
            Button btnAnnul = (Button) findViewById(R.id.btnAnnul);
            btnAnnul.setOnClickListener(new BtnAnnul(this));
        }
 
	 }
 
}
DatabaseHelper.java
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
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
 
package ;
 
 
import java.util.ArrayList;
 
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
 
 
public class DatabaseHelper extends SQLiteOpenHelper {
 
 
    private static String DATABASE_NAME = "nombase.db";  
    private static final int DATABASE_VERSION = 1;
	private  SQLiteDatabase db; 
    private static String TABLE_CONCESSION = "concession";
    DatabaseHelper DBHelper;
    /**
     * Script SQL de création de la table Concession
     */
    private static String CREATE_TABLE_CONCESSION = "create table "
        + TABLE_CONCESSION + " ("
        + "id_nom integer PRIMARY KEY  AUTOINCREMENT,"
        + "nom VARCHAR(30) NOT NULL," + "numstock VARCHAR(10) NOT NULL"
        + ")";
 
    public DatabaseHelper(Context context) {
        super(context, DATABASE_NAME,  null, DATABASE_VERSION);
        db = getWritableDatabase();
    }
 
    /**
     * Exécuté si la DB n'existe pas.
     */
    @Override
    public void onCreate(SQLiteDatabase db) {
        db.execSQL(CREATE_TABLE_CONCESSION);
    }
 
    /**
     * Exécuté chaque fois que le numéro de version de DB change.
     */
    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        db.execSQL("DROP TABLE IF EXISTS " + TABLE_CONCESSION);
        onCreate(db);
    }
 
 
    public void close(){
    	db.close();
    }
 
    public void Truncate() {
    	db.execSQL("DELETE FROM concession");
    }
    /**
     * Insère une concession dans la DB sur base 
     */
    public long insertUser( concession user) {
        ContentValues userToInsert = new ContentValues();
        userToInsert.put("nom", user.getNom());
        userToInsert.put("numstock", user.getNumstock());
        return db.insert(TABLE_CONCESSION, null, userToInsert);
    }
 
    public boolean supprimerConcession(long id){
    	return db.delete("concession", "nom="+id, null)>0;
    }
 
 
    /**
     * Charge le contenu de la table concession
     * et retourne ce contenu sous la forme d'une liste de NOM + " " + NUMSTOCK;
     */
    public ArrayList<String> getconcession() {
        ArrayList<String> output = new ArrayList<String>();
 
        String[] colonnesARecup = new String[] { "nom", "numstock" };
 
        Cursor cursorResults = db.query(TABLE_CONCESSION, colonnesARecup, null,
                null, null, null, "nom asc, numstock ", null);
        if (null != cursorResults) {
            if (cursorResults.moveToFirst()) {
 
            	do {
                    int columnIdxNom = cursorResults.getColumnIndex("nom");
                    int columnIdxNumstock = cursorResults.getColumnIndex("numstock");
                    //String nomNumstock = cursorResults.getString(columnIdxNom)
                    //        + "    -    " + cursorResults.getString(columnIdxNumstock);
                    //output.add(nomNumstock);
                    String nom = cursorResults.getString(columnIdxNom);
                    String numstock = cursorResults.getString(columnIdxNumstock);
                   output.add(nom);
                    output.add(numstock);
                } while (cursorResults.moveToNext());
            }  
        }
 
        return output;
    }  
}