Modificar el valor de las columnas Cursor en android
Tengo un Cursor devuelto De un objeto SQLiteDataBase, puedo usar getXXX () para obtener el contenido de las columnas del cursor, en mi caso quiero modificar los datos de "actualización" en el cursor usando el método setXXX()
, sé que hay No hay métodos setXXX()
, pero hay un objeto CursorWindow que tiene esta función, pero no puedo usarla
- Finalizando un Cursor que no ha sido desactivado o cerrado error no fatal
- Cómo eliminar el número de teléfono de contacto en android?
- ¿Cómo se implementa el cursor de la base de datos de Android en los detalles?
- Utilizar MergeCursor
- ¿Hay una buena razón para que un encabezado ListView ocupe una posición?
- ¿Qué significa "declaración inválida en fillWindow ()" en el cursor de Android?
- StaleDataException: acceso al cursor cerrado
- El cursor de Android 4.0 EditText siempre es invisible para editable = false
- Android CursorLoader
- Consulta getContentResolver causa la advertencia CursorWrapperInner
- Android ¿cómo codificar ahora si requery está obsoleto?
- Escribir dentro de un cursor Android
- ¿Cómo puedo hacer que mi Cursor sobreviva a un cambio de orientación?
No puede cambiar el cursor.
Lo que puede hacer es actualizar su base de datos y luego usar el método reQuery()
.
// code to update your db cursor.requery();
EDITAR
Investigaciones adicionales muestran que aparentemente soy incorrecto. Puedes hacer lo que quieras, pero es un poco de trabajo (y no, no lo he probado, solo repito mi cursor).
Encontré esto (usando una búsqueda de Google) en un foro:
Puede subclase SQLiteDatabase.CursorFactory para devolver, a partir de su método newCursor, una subclase de SQLiteCursor. Esta fábrica se pasa al constructor SQLiteOpenHelper por lo que, cuando lo consulta, devolverá los cursores de su nuevo tipo de subclase SQLiteCursor. La subclase SQLiteCursor puede entonces exponer métodos que administran su campo mWindow protegido, que es un CursorWindow. Este objeto tiene métodos putXxx para manipular los datos.
No puede alterar los valores devueltos por Cursor
. Usted necesita actualizar su base de datos, por lo tanto, cambiar los valores apuntados por el cursor devuelto o copiar los valores que obtiene utilizando getXXX en otras variables.
- DrawText sólo dibuja un carácter de cadena en Jelly Bean 4.2
- ¿Cuál es el propósito de declarar actividades?