ListView com banco de dados!

0 respostas
F

Bom dia…

Estou começando no java(Android) e não sei como resolver isso…

Estou carregando um listView com os registros de uma tabela… porém o list não carrega.

usando o Toast, fica claro que tem registros, mesmo assim… o list permanece vazio… O que pode ser?

Segue o fonte…

//---------------------------------------------------------------------------------
main.xml
//---------------------------------------------------------------------------------

<?xml version="1.0" encoding="utf-8"?>





//---------------------------------------------------------------------------------
mostradados.xml
//---------------------------------------------------------------------------------

<?xml version="1.0" encoding="utf-8"?>



//---------------------------------------------------------------------------------
ListTesteActivity .java
//---------------------------------------------------------------------------------

package br.teste.testelistview;

import android.app.Activity;

import android.os.Bundle;

import android.database.Cursor;

import android.database.sqlite.SQLiteDatabase;

import android.view.View;

import android.widget.ListView;

import android.widget.Button;

import android.widget.EditText;

import android.widget.SimpleCursorAdapter;

import android.widget.Toast;

public class ListTesteActivity extends Activity {

/** Called when the activity is first created. */
ListView lst_teste;
SimpleCursorAdapter AdapterLista;
Button btsalvar;
EditText ednome;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    
    criabanco();
    
    ednome    = (EditText)    findViewById(R.id.ednome);
    lst_teste = (ListView)    findViewById(R.id.lista);
    
    btsalvar  = (Button)      findViewById(R.id.btsalvar);
	btsalvar.setOnClickListener(new View.OnClickListener() 
	{
		public void onClick(View arg0) 
		{
	        gravabanco(ednome.getText().toString());
	        listabanco();
		}
	});	
}

public void criabanco(){

	SQLiteDatabase db;
	db = openOrCreateDatabase("dbTeste",SQLiteDatabase.CREATE_IF_NECESSARY,null);
	
	String tabela_script = null;

	tabela_script = "CREATE TABLE if not exists tbTeste (";
	tabela_script = tabela_script + " _id          TEXT, ";
	tabela_script = tabela_script + " nome         TEXT);";
	db.execSQL(tabela_script);
	
	db.close();    	
}

public void gravabanco(String xNome){

	SQLiteDatabase db;
	db = openOrCreateDatabase("dbTeste",SQLiteDatabase.OPEN_READWRITE,null);
	
	String tabela_script = null;	
	tabela_script = "Insert into tbTeste (_id, nome) ";
	tabela_script = tabela_script + "  values  ";
	tabela_script = tabela_script + "  ('1','" + xNome + "');";
	db.execSQL(tabela_script);
	
	db.close();
	
}    

public void listabanco(){
	
	String [] x = {"nome"};
	
	SQLiteDatabase db;
	db = openOrCreateDatabase("dbTeste",SQLiteDatabase.OPEN_READONLY,null);
	//Cursor cursor = db.rawQuery("Select * from tbTeste", null);
	Cursor cursor = db.query("tbTeste", null, null, null, null, null, null);
	
	if (cursor.getCount() > 0)
	{
		cursor.moveToFirst();
		
		while (cursor.moveToNext()){
    		Toast.makeText(getApplicationContext(), cursor.getString(cursor.getColumnIndex("nome")).toString(), Toast.LENGTH_SHORT).show();    			
		}

		AdapterLista = new SimpleCursorAdapter(this, R.layout.mostradados, cursor, x, 
				       new int[] {R.id.txt_lista});

		lst_teste.setAdapter(AdapterLista);
	}
	cursor.close();
	db.close();
}

}

Criado 21 de maio de 2013
Respostas 0
Participantes 1