D
DoctorBlack
Neues Mitglied
- 0
public int loescheFach(long id){
SQLiteDatabase db = this.getWritableDatabase();
return db.delete("Fach_table","FACHID=?", new String[]{String.valueOf(id)});
}
Hallo,
ich habe eine normale Datenbank mit SQLite erstellt. Über einen Button lasse ich die Daten dann in einer ListVIew anzeigen. Jetzt möchte ich die Daten aus der ListView bzw. aus der Datenbank löschen, also so, dass wenn ich ein Item in der ListVIew z.B. länger gedrückt halt, sowohl aus der ListView als auch aus der Datenbank gelöscht wird. Ich hab das schon mit einem OnItemLongClickListener probiert, leider will das nicht so ganz funktionieren. Danke schon mal für die Hilfe im Voraus
Hier einmal die Klasse zum Anzeigen in der ListVIew:
Und hier noch die Methode zum Löschen des EIntrags:
public int loescheFach(long id){
SQLiteDatabase db = this.getWritableDatabase();
return db.delete("Fach_table","FACHID=?", new String[]{String.valueOf(id)});
}
SQLiteDatabase db = this.getWritableDatabase();
return db.delete("Fach_table","FACHID=?", new String[]{String.valueOf(id)});
}
Hallo,
ich habe eine normale Datenbank mit SQLite erstellt. Über einen Button lasse ich die Daten dann in einer ListVIew anzeigen. Jetzt möchte ich die Daten aus der ListView bzw. aus der Datenbank löschen, also so, dass wenn ich ein Item in der ListVIew z.B. länger gedrückt halt, sowohl aus der ListView als auch aus der Datenbank gelöscht wird. Ich hab das schon mit einem OnItemLongClickListener probiert, leider will das nicht so ganz funktionieren. Danke schon mal für die Hilfe im Voraus
Hier einmal die Klasse zum Anzeigen in der ListVIew:
public class ZeigeFaecherListe extends AppCompatActivity {
DatabaseHelper myDb;
Cursor res;
ListView listViewFaecher;
@override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.zeige_faecher);
myDb = new DatabaseHelper(this);
ListView listViewFaecher = (ListView) findViewById(R.id.listViewFaecher);
ArrayList<String> faecherListe = new ArrayList<>();
res = myDb.zeigeFaecher();
if (res.getCount() == 0){
Toast.makeText(ZeigeFaecherListe.this, "Keine Fächer gefunden", Toast.LENGTH_LONG).show();
} else {
while (res.moveToNext()){
faecherListe.add(res.getString(1));
ListAdapter fachListAdapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, faecherListe);
listViewFaecher.setAdapter(fachListAdapter);
}
}
listViewFaecher.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
@override
public boolean onItemLongClick(AdapterView<?> adapterView, View view, int position, long id) {
myDb.loescheFach(position);
return true;
}
});
}
}
DatabaseHelper myDb;
Cursor res;
ListView listViewFaecher;
@override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.zeige_faecher);
myDb = new DatabaseHelper(this);
ListView listViewFaecher = (ListView) findViewById(R.id.listViewFaecher);
ArrayList<String> faecherListe = new ArrayList<>();
res = myDb.zeigeFaecher();
if (res.getCount() == 0){
Toast.makeText(ZeigeFaecherListe.this, "Keine Fächer gefunden", Toast.LENGTH_LONG).show();
} else {
while (res.moveToNext()){
faecherListe.add(res.getString(1));
ListAdapter fachListAdapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, faecherListe);
listViewFaecher.setAdapter(fachListAdapter);
}
}
listViewFaecher.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
@override
public boolean onItemLongClick(AdapterView<?> adapterView, View view, int position, long id) {
myDb.loescheFach(position);
return true;
}
});
}
}
public int loescheFach(long id){
SQLiteDatabase db = this.getWritableDatabase();
return db.delete("Fach_table","FACHID=?", new String[]{String.valueOf(id)});
}