NRgizer Posté(e) 9 février 2011 Share Posté(e) 9 février 2011 Bonjour, je développe depuis peu sur android et je suis actuellement sur un projet d'application pour faire un lecteur de flux RSS. J'ai très bien réussi a créer dynamiquement des onglets suite à un click sur un bouton d'un alertDialog, mais j'aurais aimé savoir si l'inverse était possible. je m'explique: --> j'aurais aimé savoir si je pouvais supprimer dynamiquement un onglet en cliquant sur un bouton et en spéciafiant sont R.id.nomDuBouton. Je sais pas si je suis clair :s ^^ Autre chose, quelqun pourrait un peu m'expliquer comment persister en base de donnée sous Android?! j'ai commencé avec quelques tutos à Build ma BDD mais pour inserer des données dedans...aoutch ^^ Merci à ceux qui prendrons un peu de temps pour moi ;)! tchuss! Lien vers le commentaire Partager sur d’autres sites More sharing options...
bibmanhjp Posté(e) 21 mars 2012 Share Posté(e) 21 mars 2012 bonjour, tu a créer un DBAdapter ? (méthode couramment utilisé sur les tuto !) si oui tu n'a pas d'insert dans ta base ? je vais te passé mon DBAdapter ca vas peut etres t'aider ! public class DBAdapter { DatabaseHelper DBHelper; Context context; SQLiteDatabase db; public DBAdapter(Context context){ this.context = context; DBHelper = new DatabaseHelper(context); } public class DatabaseHelper extends SQLiteOpenHelper{ Context context; public DatabaseHelper(Context context) { super(context, "personnel", null, 1); this.context = context; } @Override public void onCreate(SQLiteDatabase db) { db.execSQL("create table personnels (_id integer primary key autoincrement," +"nom text not null," +"prenom text not null," +"password text not null);"); db.execSQL("create table vehicule (_id integer primary key autoincrement," +"immat text not null," +"num text not null);"); db.execSQL("create table chantier (_id integer primary key autoincrement," +"codeCH text not null," +"nomCH text not null);"); db.execSQL("create table logement (_id integer primary key autoincrement," +"numLogt text not null," +"id_chantier integer not null);"); db.execSQL("create table feuille (_id integer primary key autoincrement," +"id_personnels integer not null," +"id_vehicule integer," +"date text not null," +"mode_deplacement text not null);"); db.execSQL("create table quel_logement (" +"id_logement integer not null," +"id_feuille integer not null," +"tache text," +"temps text not null);"); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { Toast.makeText(context, "mise à jour de la Base de données version "+oldVersion+" vers "+newVersion, Toast.LENGTH_SHORT).show(); db.execSQL("Drop table if exists personnels"); db.execSQL("Drop table if exists vehicule"); db.execSQL("Drop table if exists chantier"); db.execSQL("Drop table if exists logement"); db.execSQL("Drop table if exists feuille"); db.execSQL("Drop table if exists quel_logement"); onCreate(db); } } //ouvrir la base public DBAdapter open(){ db = DBHelper.getWritableDatabase(); return this; } //fermer la base public void close(){ db.close(); } //effacer les données de la base public void Truncate(){ db.execSQL("Drop table if exists personnels"); db.execSQL("create table personnels (_id integer primary key autoincrement," +"nom text not null," +"prenom text not null," +"password text not null);"); db.execSQL("Drop table if exists vehicule"); db.execSQL("create table vehicule (_id integer primary key autoincrement," +"immat text not null," +"num text not null);"); db.execSQL("Drop table if exists chantier"); db.execSQL("create table chantier (_id integer primary key autoincrement," +"codeCH text not null," +"nomCH text not null);"); db.execSQL("Drop table if exists logement"); db.execSQL("create table logement (_id integer primary key autoincrement," +"numLogt text not null," +"id_chantier integer not null);"); db.execSQL("Drop table if exists feuille"); db.execSQL("create table feuille (_id integer primary key autoincrement," +"id_personnels integer not null," +"id_vehicule integer," +"date text not null," +"mode_deplacement text not null);"); db.execSQL("Drop table if exists quel_logement"); db.execSQL("create table quel_logement (" +"id_logement integer not null," +"id_feuille integer not null," +"tache text," +"temps text not null);"); } //insertion personnel public long insererPersonnel(String nom , String prenom , String password){ ContentValues values = new ContentValues(); values.put("nom", nom); values.put("prenom", prenom); values.put("password", password); return db.insert("personnels",null,values); } //insertion vehicule public long insererVehicule(String immat , String num){ ContentValues values = new ContentValues(); values.put("immat", immat); values.put("num", num); return db.insert("vehicule",null,values); } //insertion chantier public long insererChantier(String codeCH , String nomCH ){ ContentValues values = new ContentValues(); values.put("codeCH", codeCH); values.put("nomCH", nomCH); return db.insert("chantier",null,values); } //insertion logement public long insererLogement(String numLogt , String idCH){ ContentValues values = new ContentValues(); values.put("numLogt", numLogt); values.put("id_chantier", idCH); return db.insert("logement",null,values); } //insertion feuille public long insererFeuille(String idPer , String idVL , String date , String depl){ ContentValues values = new ContentValues(); values.put("id_personnels", idPer); values.put("id_vehicule", idVL); values.put("date", date); values.put("mode_deplacement", depl); return db.insert("feuille",null,values); } //insertion quel_logement public long insererQuelLogement(String idlogt , String idfeuille , String tache , String temps){ ContentValues values = new ContentValues(); values.put("id_logement", idlogt); values.put("id_feuille", idfeuille); values.put("tache", tache); values.put("temps", temps); return db.insert("quel_logement",null,values); } // //supprimer un personnel // public Boolean supprimerPersonnel(long id){ // return db.delete("personnels", "_id="+id, null)>0; // } // // //supprimer un vehicule // public Boolean supprimerVehicule(long id){ // return db.delete("vehicule", "_id="+id, null)>0; // } // // //supprimer un chantier // public Boolean supprimerChantier(long id){ // return db.delete("chantier", "_id="+id, null)>0; // } // // //supprimer un logement // public Boolean supprimerLogement(long id){ // return db.delete("logement", "_id="+id, null)>0; // } //select de la table personnels! public Cursor recupererListePersonnels(){ return db.query("personnels", new String[]{ "_id", "nom", "prenom", "password"}, null, null, null, null, null); } //select de la table vehicule! public Cursor recupererListeVehicule(){ return db.query("vehicule", new String[]{ "_id", "immat", "num"}, null, null, null, null, null); } //select de la table chantier! public Cursor recupererListeChantier(){ return db.query("chantier", new String[]{ "_id", "codeCH", "nomCH"}, null, null, null, null, null); } //select de la table logement en fonction d'un chantier! public Cursor recupererListeLogement(CharSequence code){ return db.query("logement", new String[]{ "_id", "numLogt"}, "id_chantier = '" + code + "'" ,null, null, null, null, null); } //select pour trouver le numéro id de la derniere feuille d'heure enregistrer public int numMaxFeuille(){ String query = "SELECT MAX(_id) AS max_id FROM feuille"; Cursor cursor = db.rawQuery(query, null); int id = 0; if (cursor.moveToFirst()) { do { id = cursor.getInt(0); } while(cursor.moveToNext()); } return id; } //selecte pour récupérer les informations des feuilles et vehicule pour la consultation public Cursor recupInfoFeuille(String numNomCons2){ String query = "SELECT feuille._id , feuille.date , feuille.mode_deplacement ," +" vehicule.immat , vehicule.num " +" FROM feuille " +" INNER JOIN vehicule" +" ON feuille.id_vehicule = vehicule._id" +" where id_personnels='"+numNomCons2+"'"; Cursor cursor = db.rawQuery(query, null); return cursor; } //selecte pour récupérer les informations codeCH,nomCH,numLogt,Taches,Temps pour la consultation public Cursor recupInfoAutre(String numFeuille){ String query = "SELECT quel_logement.tache , quel_logement.temps ," +"logement.numLogt ," +"chantier.codeCH , chantier.nomCH " +" FROM quel_logement" +" INNER JOIN logement" +" ON quel_logement.id_logement = logement._id" +" INNER JOIN chantier" +" ON logement.id_chantier = chantier._id" +" where id_feuille='"+numFeuille+"'"; Cursor cursor = db.rawQuery(query, null); return cursor; } } bon y a un peux de tout tu ferra le trie ^_^ sinon je suis comme toi j'aimerai supprimer des onglets que j'ai créer avent via un bouton donc si quelqu'un peux nous aider ! :) merci merci :D Lien vers le commentaire Partager sur d’autres sites More sharing options...
Recommended Posts
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.