Vista de lista de la base de datos

En mi aplicación tengo 1 base de datos y necesito mostrar los datos de esa base de datos usando un ListView. Alguien por favor ayúdame.

Así es como obtengo datos de la base de datos:

db.open();
    Cursor c = db.getAllTitles();
    if (c.moveToFirst()) {
       do {
            //in this i have to display the data
            DisplayTitle(c)
       } while (c.moveToNext());
    }           

preguntado el 21 de mayo de 12 a las 11:05

prueba esto > [http://stackoverflow.com/questions/9785563/how-to-write-reusable-code-for-database-in-android/9785657#9785657][1] [1]: stackoverflow.com/questions/9785563/… -

6 Respuestas

Tu caso se adapta SimpleCursorAdapter con ListView Para más detalles revisa esto aquí

contestado el 21 de mayo de 12 a las 12:05

contestado el 21 de mayo de 12 a las 12:05

SimpleCursorAdapter se puede utilizar para obtener los datos de la database y mostrar en el ListView.

Aquí está el código de muestra para implementar su requisito:

  int[] names = new int[] {R.id.Full_Name,R.id.name};
 private static final String fields[] = {"DatabaseColumn_Name1", "DatabaseColumn_Name2"}; 
  ListView = (ListView)findViewById(R.id.list1);
  DataBaseHelper myDbHelper = new DataBaseHelper(null);
  myDbHelper = new DataBaseHelper(this);
  String sql ="SELECT STATEMENT";
  Cursor cdata = myDbHelper.getView(sql);
  if (cdata != null) 
{
    cdata.moveToFirst();
    while (cdata.isAfterLast() == false) {
        String tx = (cdata.getString(2));
        cdata.moveToNext();
}
startManagingCursor(cdata); 
CursorAdapter adaptr = new MyCursorAdapter( 
            getApplicationContext(), R.layout.listview1, cdata, fields, names);

contestado el 21 de mayo de 12 a las 12:05

Puede almacenar los datos en una lista de matrices e inflar el diseño usando un adaptador basado

contestado el 21 de mayo de 12 a las 12:05

private void fillData() {
    Cursor notesCursor = mDbHelper.fetchAllNotes();
    startManagingCursor(notesCursor);


    // Create an array to specify the fields we want to display in the list (only TITLE)
    String[] from = new String[]{NoteDb.KEY_TITLE, NoteDb.KEY_SDATE, NoteDb.KEY_STIME};

    // and an array of the fields we want to bind those fields to (in this case just text1)
    int[] to = new int[]{R.id.text1 , R.id.dateInNotes, R.id.timeInNotes};

    // Now create a simple cursor adapter and set it to display
    SimpleCursorAdapter notes = 
        new SimpleCursorAdapter(this, R.layout.notes_row, notesCursor, from, to);
    setListAdapter(notes);

    //notesCursor.close();

}

contestado el 21 de mayo de 12 a las 12:05

nombresC = (Cursor) ayudabbdd.getCursorNombres();   
        startManagingCursor(nombresC);
        nombresC.moveToFirst();

        //Para crear un simpleCursorAdapter necesitamos
        //Contexto this
        //Layour donde se mostrara el resultado, generalmente un textview
        //Cursor 
        //Cual sera el campo que recibiremos de la BBDD
        //Donde tenemos que poner esa informacion, generalmente el ID correspondiente al textvies del layour del segundo parametro



        String[] deNombre = new String[]{DataBaseHelper.CNOMBRE};
        int[] aNombre = new int[]{R.id.nombreLugar};
        lugaresNombre = new SimpleCursorAdapter(this, R.layout.entrada_lista, nombresC, deNombre, aNombre);
        setListAdapter(lugaresNombre);
        listaview= getListView();

contestado el 21 de mayo de 12 a las 13:05

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.