0
0xnull
Neues Mitglied
- 0
Hallo,
nachdem ich meine Datenbank geändert habe, aktualisiert sich meine ListView nicht sofort. Ich muss erst die Activity neu starten, damit alle Einträge korrekt dargestellt werden.
Leider finde ich meinen Fehler nicht:
Sieht jemand den Fehler?
Vielen Dank
nachdem ich meine Datenbank geändert habe, aktualisiert sich meine ListView nicht sofort. Ich muss erst die Activity neu starten, damit alle Einträge korrekt dargestellt werden.
Leider finde ich meinen Fehler nicht:
Code:
public class Foo extends Activity {
private ListView listView;
private SimpleCursorAdapter adapter;
public void onCreate(Bundle savedInstanceState) {
//...
saveButton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
save(); // neuen Eintrag bei Buttonklick in der DB speichern
}
});
fillData(); // alle aktuellen Einträge anzeigen
}
private void fillData() {
String[] projection = {Table.COLUMN_ID, A.COLUMN_A};
String[] from = {A.COLUMN_A};
int[] to = {R.id.tx_a_entry};;
Cursor cursor = getContentResolver().query(MyContentProvider.CONTENT_URI_A, projection, null, null, null);
if(cursor.getCount() == 0) {
}
else {
adapter = new SimpleCursorAdapter(this, R.layout.a_row, cursor, from, to, 0);
listView.setAdapter(adapter);
}
}
private void save() {
String str = ((EditText) findViewById(R.id.ed_enter_a)).getText().toString();
ContentValues values = new ContentValues();
values.put(Table.COLUMN_A, str);
getContentResolver().insert(MyContentProvider.CONTENT_URI_A, values);
adapter.notifyDataSetChanged(); // funktioniert nicht. Warum?
}
}
Vielen Dank