Reputation: 1049
I delete data in SQLi but listview not update. I have to open activity agian then listview will update.
This is function delete data.
private void delData(int position) {
cursor.moveToPosition(position);
String rowId = cursor.getString(0);
db.delete(DBHelper.TABLE_NAME, "_id = ?", new String[]{rowId});
cursor.requery();
adapter.notifyDataSetChanged();
}
This is function OnItemClick in OnCreate.
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_driver);
dbHelper = new DBHelper(DriverActivity.this);
lv_driver=(ListView)findViewById(R.id.lv_driver);
lv_driver.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
delData(i);
}
});
}
How to update listview after delete data ?
Upvotes: 1
Views: 75
Reputation: 20626
I delete data in SQLi but
ListView
not update. I have to open activity again thenListView
will update.
Yes, it's normal you are deleting the item from SQLite not from your ListView
.
How to update
ListView
after delete data ?
You can recreate the ListView
or just remove your item adapter.remove(position);
Example :
private void delData(int position) {
cursor.moveToPosition(position);
String rowId = cursor.getString(0);
db.delete(DBHelper.TABLE_NAME, "_id = ?", new String[]{rowId});
cursor.requery();
adapter.remove(position);
adapter.notifyDataSetChanged();
}
Upvotes: 1