I have this class
private SQLiteDatabase dbCategoria;
DAOcategoria dao;
@Override
protected void onCreate(Bundle savedInstanceState) {
//stuff
SQLiteDatabase dbCategoria;
dbCategoria = openOrCreateDatabase("Lista_gastos.db", Context.MODE_PRIVATE, null);
dao = new DAOcategoria(dbCategoria);
//more stuff
buscadados(select nome from categoria)
}
public ArrayList<String> buscaDados(String sql){
Cursor dados = dao.RetornarDados(sql);
ArrayList<String> res = new ArrayList<String>();
dados.moveToFirst();
do{
// HERE is my problem i guess
res.add(dados.getString(dados.getColumnIndex("nome")));
}while (dados.moveToNext());
dados.close();
return res;
}
public Cursor RetornarDados(String sql) {
Cursor dados = null;
try
{
dados = db.rawQuery(sql, null);
return dados;
}
catch(Exception ex)
{
return dados;
}
}
I'm putting this String list on a spinner just to see the results, but what those string are returning are "android.support.v7.widget.App...' , however i wanna the values inside the table, i really can't see what i'm doing wrong
here's how i'm inserting new info
public void inserir(){
EditText txtCat = (EditText)findViewById(R.id.txtCat);
StringBuilder sql = new StringBuilder();
if (!(txtCat.equals(""))) {
sql.append("INSERT INTO categoria(nome) VALUES (");
sql.append("'" + txtCat + "')");
if (dao.ExecutarComando(sql.toString()) == true) {
Toast.makeText(getBaseContext(), "Nova categoria criada com sucesso", Toast.LENGTH_SHORT).show();
txtCat.setText("");
} else {
Toast.makeText(getBaseContext(), sql.toString(), Toast.LENGTH_LONG).show();
}
}