style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">

Listar registros en una lista con SQLite Android

Hola gente.
Tengo una consulta que hacerles.

Bueno el objetivo de mi aplicacion es que llene una lista con los valores extraidos de una base de datos SQLite, que previamente fueron guardados en ella obtenidos de un recurso web.

Todo va bien hasta ahora, insertando los valores obtenidos del recurso web en la base de datos. El problema es cuando quiero leer esos valores y setearlos en una lista para asi mostrarlos en otra activity.
Utilizo una tarea asincronica. En el "onPostExecute" es donde llamo a mi otra clase para setearle los valores.

Les dejo la clase donde tengo problemas y la otra clase donde solo contiene un arrayAdapter para asi setear un array de String con los valores extraidos de la DB.

Solo recupera las lineas de Colectivo de una determinada ciudad y las setea en una lista.

Esta es una de las clases de mi proyecto con la que estoy teniendo problemas...

package com.efisat.ejercombopaises;

import java.util.Date;
import java.util.Vector;

import android.app.Activity;
import android.app.ListActivity;
import android.app.ProgressDialog;
import android.content.ContentValues;
import android.content.Context;
import android.content.Intent;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.AsyncTask;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.CursorAdapter;
import android.widget.ListAdapter;
import android.widget.ListView;
import android.widget.SimpleCursorAdapter;
import android.widget.TextView;
import android.widget.Toast;

import com.efisat.controlador.Controlador;
import com.efisat.databases.LineasDataBase;

public class Resultado extends Activity implements OnClickListener {
        private TextView textPais;
        private TextView textProvincia;
        private TextView textCiudad;
        private TextView textCodigoUsuario;
        private Button btnCargarLineas;
        private String pais, provincia, ciudad, userCode;
        private TareaSegundoPlano tareaSegundoPlanoPais;
        private Controlador ctrlServidor;
        private static Context mContext;
        private ProgressDialog dialog;
        public static String[] lineas;
        private String fechaUltima;
        private int code;
        private int id;

        private LineasDataBase lineasDB;
        private CursorAdapter adapter;
        private ListAdapter listAdapter;
        private ListView listView;

        private String linePrueba;

        @Override
        protected void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                setContentView(R.layout.activity_resultado);
                initialize();
                mostrar();
                dialog = new ProgressDialog(this);
                dialog.setMessage("Descargando...");
                dialog.setTitle("Progreso");
                dialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
                dialog.setCancelable(false);
        }

        // public void adaptador() {
        // lineasDB = new LineasDataBase(getBaseContext());
        //
        // listAdapter = getAdapter();
        // setListAdapter(listAdapter);
        // listView = getListView();
        // registerForContextMenu(listView);
        // }

        public void cargarLineas() {
                lineas = new String[MainActivity.arrayList_Lineas.size()];
                for (int i = 0; i < MainActivity.arrayList_Lineas.size(); i++) {
                        lineas[i] = MainActivity.arrayList_Lineas.get(i).get_descripcion();
                        // MainActivity.arrayList_Lineas.get(i).get_codigo();

                }
        }

        public void mostrar() {
                Bundle bundle = new Bundle();
                bundle = getIntent().getExtras();

                pais = bundle.getString("PAIS");
                provincia = bundle.getString("PROVINCIA");
                ciudad = bundle.getString("CIUDAD");
                userCode = bundle.getString("USERCODE");

                textPais.setText(pais);
                textProvincia.setText(provincia);
                textCiudad.setText(ciudad);
                textCodigoUsuario.setText(userCode);
        }

        public void initialize() {
                textPais = (TextView) findViewById(R.id.textPais);
                textProvincia = (TextView) findViewById(R.id.textProvincia);
                textCiudad = (TextView) findViewById(R.id.textCiudad);
                textCodigoUsuario = (TextView) findViewById(R.id.textCodigoUsuario);
                btnCargarLineas = (Button) findViewById(R.id.btnCargarLineas);

                btnCargarLineas.setOnClickListener(this);
        }

        @Override
        public boolean onCreateOptionsMenu(Menu menu) {
                // Inflate the menu; this adds items to the action bar if it is present.
                getMenuInflater().inflate(R.menu.resultado, menu);
                return true;
        }

        private int cargarRecursoLineas() {
                @SuppressWarnings("rawtypes")
                Vector nombre;
                @SuppressWarnings("rawtypes")
                Vector contenido;

                String fechaUltima = null;

                nombre = new Vector();
                contenido = new Vector();
                String resultadoLinea = "";

                fechaUltima = String.valueOf((new Date("16/08/1981")).getTime());

                nombre.addElement("fecha");
                contenido.addElement(fechaUltima);

                nombre.addElement("funcion");
                contenido.addElement("Lineas");

                nombre.addElement("userId");
                contenido.addElement(MainActivity.usuarioId);

                // resultadoLinea = ctrlServidor
                // .comunicacionConServidor(nombre, contenido);

                resultadoLinea = Controlador.comunicacionConServidor(nombre, contenido);

                int proceso = ProcesaRecursos.procesarRecurso(resultadoLinea,
                                ProcesaRecursos.LINEA, mContext);

                return proceso;
        }

        @Override
        public void onClick(View v) {
                switch (v.getId()) {
                case R.id.btnCargarLineas:
                        tareaSegundoPlanoPais = new TareaSegundoPlano();
                        tareaSegundoPlanoPais.execute();
                        break;
                }
        }

        public class TareaSegundoPlano extends AsyncTask<Void, Void, Void> {
                // Método que se ejecutará antes de la tarea en segundo plano,
                // normalmente utilizado para iniciar el entorno gráfico
                protected void onPreExecute() {
                        // initialize();
                        dialog.setProgress(0);
                        dialog.setMax(100);
                        // Mostramos el diálogo antes de comenzar
                        // barraProgreso.setProgress(0);//Ponemos la barra de progreso a 0
                        // barraProgreso.setMax(60);//El máximo de la barra de progreso son
                        // 60, de los 60 segundo que va a durar la tarea en segundo plano.
                        dialog.show();
                }

                // Este método se ejecutará después y será el que ejecute el código en
                // segundo plano
                @Override
                protected Void doInBackground(Void... params) {
                        // int proceso = cargarRecursoPais();
                        // initialize();
                        // cargarCmbPais();
                        // int proceso_en_curso = 0;
                        // recuperarRegistroLinea(proceso_en_curso);

                        cargarRecursoLineas();

                        // Al llegar aquí, no devolvemos nada y acaba la
                        // tarea
                        // en segundo plano y se llama al método
                        // onPostExecute().
                        return null;
                }

                protected void onProgressUpdate(Void... values) {
                        // barraProgreso.setProgress(progreso);// Actualizamos la barra de
                        // progreso con los segundos que vayan.
                }

                protected void onPostExecute(Void result) {// A este método se le llama
                        // cada vez que termine la
                        // tarea en segundo plano.
                        try {

                                // lineDB = new LineasDataBase(getBaseContext());

                                // listAdapter = getAdapter();
                                // setListAdapter(listAdapter);
                                // listView = getListView();
                                // registerForContextMenu(listView);

                                cargarLineas();
                                alta(id);
                                // adaptador();
                                Toast.makeText(getBaseContext(),
                                                " Se agrego y leyo el registro de la DB SQLite",
                                                Toast.LENGTH_LONG).show();

                        } catch (Exception e1) {
                                Toast.makeText(getBaseContext(), "Error al agregar registro"
                                                + e1.getMessage(), Toast.LENGTH_LONG);
                                e1.printStackTrace();
                        }

                         Intent intent = new Intent(getBaseContext(), ListaLineas.class);
                         startActivity(intent);

                        Toast.makeText(getBaseContext(), "Tarea finalizada",
                                        Toast.LENGTH_SHORT).show();// Nos muestra una notificación
                                                                                                // informando de que la tarea en
                        // segundo plano ha finalizado

                        try {
                                dialog.dismiss();
                        } catch (Exception e) {
                                e.printStackTrace();
                        }
                }
        }

        // BASE DE DATOS
        public void alta(int id) {
                LineasDataBase ldb = new LineasDataBase(this);
                SQLiteDatabase db = ldb.getWritableDatabase();

                // String li = "Linea 23";
                // String titulo = campoTitulo.getText().toString();
                // String descripcion = campoDescripcion.getText().toString();

                // String[] line = Resultado.lineas;
                ContentValues cv = new ContentValues();
                lineas = new String[MainActivity.arrayList_Lineas.size()];
                for (int i = 0; i < MainActivity.arrayList_Lineas.size(); i++) {
                        lineas[i] = MainActivity.arrayList_Lineas.get(i).get_descripcion();
                        cv.put(LineasDataBase.LINE, lineas[i]);
                        // MainActivity.arrayList_Lineas.get(i).get_codigo();

                }

                // for (int i = 0; i < lineas.length; i++) {
                // cv.put(LineasDataBase.LINE, lineas[i]);
                // }
                // cv.put(LineasDataBase.LINE, lineas.toString());
                if (id == 0) {
                        db.insert(LineasDataBase.LINEAS_TABLA, null, cv);
                        db.close();
                        Toast.makeText(this, "- Lineas agregadas correctamente -",
                                        Toast.LENGTH_LONG).show();
                }
        }

        CursorAdapter getAdapter() {
                if (adapter == null) {
                        String columnas[] = { LineasDataBase.LINE };
                        int[] columnasViews = { R.id.itemLine };

                        Cursor cursor = crearCursor();

                        adapter = new SimpleCursorAdapter(this, R.layout.elementos_linea,
                                        cursor, columnas, columnasViews);
                }
                return adapter;
        }

        Cursor crearCursor() {
                LineasDataBase ldb = new LineasDataBase(this);
                SQLiteDatabase db = ldb.getReadableDatabase();

                String columnas[] = { LineasDataBase.ID, LineasDataBase.LINE, };

                Cursor cursor = db.query(LineasDataBase.LINEAS_TABLA, columnas, null,
                                null, null, null, null);

                // if (cursor.moveToFirst()) {
                // do {
                // String line = cursor.getString(0);
                // // String isbn = cursor.getString(0);
                // // String titulo = cursor.getString(1);
                // // String desc = cursor.getString(2);
                //
                // // hacer algo
                // } while (cursor.moveToNext());
                // }

                return cursor;
        }

        @Override
        protected void onDestroy() {
                super.onDestroy();
                lineasDB.close();
        }

        @Override
        protected void onStart() {
                super.onStart();
                CursorAdapter listAdapter = getAdapter();
                listAdapter.changeCursor(crearCursor());
        }
}

Esta es la clase donde se setean los valores al arrayAdapter...

package com.efisat.ejercombopaises;

import android.app.ListActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;

public class ListaLineas extends ListActivity {

        @Override
        protected void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                // requestWindowFeature(Window.FEATURE_NO_TITLE);
                setListAdapter(new ArrayAdapter<String>(getBaseContext(),
                                android.R.layout.simple_list_item_1, Resultado.lineas));
        }

        @Override
        protected void onListItemClick(ListView l, View v, int position, long id) {
                // TODO Auto-generated method stub
                super.onListItemClick(l, v, position, id);
        }

}

·ESpero que me puedan ayudar.
Saludos

style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">