ahmed bl Posté(e) 9 mai 2012 Posté(e) 9 mai 2012 bonsoir ,j'ai un probleme au niveau de mon base de donnée voici mon code ********************************************* package com.projet; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; import android.widget.Toast; 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, "ma_base", null, 1); this.context = context; } @Override public void onCreate(SQLiteDatabase db) { db.execSQL("create table local (_id integer primary key autoincrement, " + "nom text not null" + "adresse text not null " + "tel integer not null" + "latitude float not null" + "longitude float 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 local"); onCreate(db); } } public DBAdapter open(){ db = DBHelper.getWritableDatabase(); return this; } public void close(){ db.close(); } public void Truncate(){ db.execSQL("DELETE FROM local"); } public long insererLocal(Local local){ ContentValues values = new ContentValues(); values.put("nom", local.getnom()); values.put("adresse", local.getadresse()); values.put("tel", local.gettel()); values.put("latitude", local.getlatitude()); values.put("longitude", local.getlongitude()); return db.insert("local", null, values); } public boolean supprimerLocal(long id){ return db.delete("local", "_id="+id, null)>0; } public Cursor recupererLaListeDesLocal(){ return db.query("local", new String[]{ "_id", "nom", "adresse", "tel", "latitude", "longitude"}, null, null, null, null, null); } } ******************************************************************** package com.projet; import android.R; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.widget.TextView; public class InfoLocal extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.infolocal); TextView text=(TextView)findViewById(R.id.textView4); Intent res = getIntent(); text.setText("Local: "+res.getExtras().getString("nom")); } } ************************************************************************ package com.projet; public class Local { private int id; private String nom; private String adresse; private int tel; private float latitude; private float longitude; public Local(){} public Local(String nom, String adresse, int tel, float latitude,float longitude){ this.nom=nom; this.adresse =adresse; this.tel= tel; this.latitude=latitude; this.longitude=longitude; } public int getId(){ return id ; } public void setId (int id){ this.id=id; } public String getnom(){ return nom ; } public void setnom (String nom){ this.nom=nom; } public String getadresse(){ return adresse ; } public void setadresse (String adresse){ this.adresse=adresse; } public int gettel(){ return tel ; } public void settel (int tel){ this.tel=tel; } public float getlatitude(){ return tel ; } public void setlatitude (float latitude){ this.latitude=latitude; } public float getlongitude(){ return longitude ; } public void setlongitude (float longitude){ this.longitude=longitude; } public String toString(){ return "ID : "+id +"\nISBN : "+nom +"\nTitre : "+adresse; } } ********************************************************************* package com.projet; import android.app.ListActivity; import android.content.Intent; import android.database.Cursor; import android.os.Bundle; import android.view.ContextMenu; import android.view.ContextMenu.ContextMenuInfo; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.view.View.OnClickListener; import android.widget.AdapterView; import android.widget.Button; import android.widget.ListView; import android.widget.SimpleCursorAdapter; import android.widget.Toast; public class LocalList extends ListActivity implements OnClickListener { Button b; DBAdapter db; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); db = new DBAdapter(this); getListView().setOnCreateContextMenuListener(this); b=(Button)findViewById(R.id.edit); b.setOnClickListener(this); db.open(); DataBind(); } private void DataBind() { Cursor c = db.recupererLaListeDesLocal(); startManagingCursor©; SimpleCursorAdapter adapter = new SimpleCursorAdapter(this, R.layout.list_item,c,new String[]{"nom","adresse","tel","latitude","longitude"}, new int[]{R.id.nom,R.id.adresse,R.id.tel,R.id.latitude,R.id.longitude}); setListAdapter(adapter); } protected void onDestroy() { db.close(); super.onDestroy(); } public void onClick(View v) { Intent i=new Intent(this,Saisie.class); startActivity(i); } public boolean onCreateOptionsMenu(Menu menu) { menu.add(0,100,0,"Tout effacer"); return true; } @Override // Selection d'un item du menu public boolean onOptionsItemSelected(MenuItem item) { switch(item.getItemId()){ case 100: db.Truncate(); DataBind(); break; } return true; } public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) { super.onCreateContextMenu(menu, v, menuInfo); menu.setHeaderTitle("Action"); menu.add(0,100,0,"Supprimer"); menu.add(0,200,1,"Editer"); } @Override // Selection d'un item du menu contextuel public boolean onContextItemSelected(MenuItem item) { AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) item.getMenuInfo(); switch(item.getItemId()){ case 100: db.supprimerLocal(info.id); DataBind(); break; case 200: Toast.makeText(this, "TODO", Toast.LENGTH_SHORT).show(); break; } return true; } protected void onListItemClick(ListView l, View v, int position, long id) { Cursor cursor = (Cursor)l.getAdapter().getItem(position); String nom = cursor.getString(cursor.getColumnIndex("nom")); Intent intent=new Intent(this,InfoLocal.class); intent.putExtra("nom",nom); startActivity(intent); super.onListItemClick(l, v, position, id); } } ************************************************************************ package com.projet; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; public class Saisie extends Activity implements OnClickListener { EditText nom; EditText adresse; EditText tel; EditText latitude; EditText longitude; Button b; DBAdapter db; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.saisie); nom=(EditText)findViewById(R.id.nom); adresse=(EditText)findViewById(R.id.adresse); tel=(EditText)findViewById(R.id.tel); latitude=(EditText)findViewById(R.id.latitude); longitude=(EditText)findViewById(R.id.longitude); b=(Button)findViewById(R.id.ajout); b.setOnClickListener(this); db = new DBAdapter(this); db.open(); } public void onClick(View arg0) { Local local= new Local(nom.getText().toString(),adresse.getText().toString(),tel.getText().toString(),latitude.getText().toString(),longitude.getText().toString()""); db.insererLocal(local); Toast.makeText(this, "Local Ajouté", Toast.LENGTH_SHORT).show(); nom.setText(""); adresse.setText(""); } }
chpil Posté(e) 10 mai 2012 Posté(e) 10 mai 2012 Merci d'utiliser les balises [ code ] dans ton message, pour le rendre plus lisible Et surtout, merci de nous indiquer quel est le problème que tu rencontres... si tu veux vraiment qu'on t'aide... !
ahmed bl Posté(e) 10 mai 2012 Auteur Posté(e) 10 mai 2012 le probléme est au niveau de ce code Local(nom.getText().toString(),adresse.getText().toString(),tel.getText().toString(),latitude.getText().toString(),longitude.getText().toString()"");
chpil Posté(e) 10 mai 2012 Posté(e) 10 mai 2012 Et ? Tu ne nous a toujours pas répondu: quel est le problème ?? Ton appli plante ? Tu as une exception ? Si oui, laquelle ? Fais un effort, sois précis dans tes explications, parce que des "j'ai un problème", "ça ne marche pas", ..., ça ne sert pas à grand chose...
Recommended Posts
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.