Obtener el resultado del cursor y convertirlo en una cadena para TextView

Esta es mi pregunta:

Cursor nextdate(String Date) { SQLiteDatabase db = this.getReadableDatabase(); String[] params = new String[]{String.valueOf(Date)}; Cursor cur = db.rawQuery(" SELECT MIN (" + colDateDue + ") FROM " + PAYMENTS + " WHERE " + colDateDue + ">=?", params); cur.moveToFirst(); return cur; } 

Quiero mostrar el resultado de esa consulta en un TextView, pero no sé cómo, por lo que, naturalmente, busco una respuesta. Encuentro algunas respuestas alrededor y vengo con esto:

 DatabaseHelper db = new DatabaseHelper(this); String str = ""; if (c!= null) { if (c.moveToFirst()) { str = c.getString(c.getColumnIndex(db.colDateDue); } } TextView.setText(str); 

Pero consigo el error

 Caused by: java.lang.IllegalStateException: Couldn't read row 0, col -1 from CursorWindow. Make sure the Cursor is initialized correctly before accessing data from it. 

Lo que me hizo un poco confundido ya que la solución habitual para ese error es usar cur.moveToFirst(); Que se utiliza en ambos casos … ¿qué estoy haciendo mal exactamente?

Intente de esta manera:

Mantener el índice de columna como 0 porque ese cursor tendrá sólo una columna.

 DatabaseHelper db = new DatabaseHelper(this); String str = ""; if (c!= null) { if (c.moveToFirst()) { str = c.getString(0); } } TextView.setText(str); 

Está intentando utilizar el índice de db.colDateDue . Sin embargo, eso no se correlaciona con su consulta real. Usted puede felizmente tirar el primer resultado con:

 str = c.getString(0); 
  • Android rawQuery - ¿Hay una manera de usar "IN" parametrizada para una colección de datos
  • Java.lang.IllegalStateException: intento de volver a abrir un objeto ya cerrado (Tried closing)
  • Android - CursorLoader y SQLite sin proveedor de contenido
  • Cierre del cursor en onPostExecute no produce nada
  • Cursor crashing: Índice 0 solicitado, con un tamaño de 0
  • Android ExpandableListView y base de datos SQLite
  • ORMLite insertar o reemplazar
  • Android: acceder a la base de datos SQLite a través del proveedor de contenido o implementar DAO?
  • La aplicación se bloquea si el cursor SQLite no tiene resultados
  • Comprobación de Android cuando se actualizó la última vez
  • Almacenamiento y recuperación de datos no ingleses en la base de datos sqlite en android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.