Oye uso una vista de lista para mostrar las entradas que se almacenan en una base de datos. También tengo un elemento EditText y un botón que agrega el contenido de EditText a la base de datos. Para obligar a la vista del contenido de bases de datos que utilizo el SimpleCursorAdapter y después de la función poblar:Android ListView update con SimpleCursorAdapter
private void populate() {
cursor = dbAdapter.getAllItems();
startManagingCursor(cursor);
String[] from = new String[] { DBAdapter.KEY_TASK };
int[] to = new int[] { android.R.id.text1 };
// Now create an array adapter and set it to display using our row
cursorAdapter = new SimpleCursorAdapter(this, android.R.layout.simple_list_item_1, cursor, from, to);
list.setAdapter(cursorAdapter);
}
Si he añadido una nueva entrada, haciendo clic en el botón i desea actualizar la vista de lista, pero esto sólo funciona con la función poblar y no con la función de adaptador común notifyDataSetChanged();
. ¿Tengo un error o esta es la forma correcta de actualizar una lista de visitas?
Solo para mencionar: 'requery()' ya está en desuso. [Documentation] (http://developer.android.com/reference/android/database/Cursor.html#requery()) tiene un registro claro sobre esto. – 87element
Lo sé, no terminé de pronunciar esa frase, reformué:> – Jack
Hola Jack, gracias por tu respuesta, veo que me olvido de decir que el código anterior es mi función 'populate()' lo llamo mi método 'onCreate()' y si hago clic en "Agregar" -Botón. Solo quería saber si esta es una buena solución para llamar a este método en lugar de llamar al método común 'notifyDataSetChanged()' de la clase de adaptador base. –