Android ListView: ¿cómo evitar la consulta de base de datos en bindView ()? Necesidad de obtener uno a muchos datos de relaciones

Tengo una vista de lista para mostrar álbumes. En cada elemento de la lista de álbumes, necesito mostrar cierta información de cada foto en este álbum. Aquí es cómo se ve mi cargador de cursor:

@Override
public Loader<Cursor> onCreateLoader(int id, Bundle args) {
    return new CursorLoader(this, AlbumsColumns.CONTENT_URI, null, null, null, null);
}

@Override
public void bindView(View view, Context context, Cursor cursor) {

    long albumId = cursor.getLong(cursor.getColumnIndex(AlbumsColumns._ID));

    Cursor photoCursor = getContentResolver().query(PhotosColumns.CONTENT_URI, null, PhotosColumns.ALBUM_ID + " = ?", 
            new String[]{Long.toString(albumId)}, null);

    if (photoCursor.moveToFirst()){
        do{

            // Here I collect the information from each photo in the album

        }while(photoCursor.moveToNext());
    }

    photoCursor.close();
}

Básicamente, dejo que el cargador de cursor administre la consulta del álbum, y cada vez en bindView solicito las fotos del cursor del álbum pasado. Siento que esto puede ser un problema de rendimiento. ¿Hay una mejor manera de hacer esto?

Respuestas a la pregunta(1)

Su respuesta a la pregunta