Boa tarde Pessoal! Estou com dificuldade na hora que gravo um item ele não recarrega minha listview e da erro de insert.
Este é o erro do Insert, ao clicar no botão salvar:
02-21 15:33:01.376: E/SQLiteDatabase(601): Error inserting categoria=teste
02-21 15:33:01.376: E/SQLiteDatabase(601): android.database.sqlite.SQLiteException: table categoria has no column named categoria: , while compiling: INSERT INTO categoria(categoria) VALUES (?)
Essa parte é a parte da minha list:
private Dao dao = new Dao(this);
private String[] categorias;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.categoria);
categorias = getResources().getStringArray(R.array.categorias);
Arrays.sort(categorias);
ListView list = (ListView) findViewById(R.id.listView1);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, getResources()
.getStringArray(R.array.categorias));
// setando o adapter na listview
list.setAdapter(adapter);
list.setOnItemClickListener(new OnItemClickListener() {
// serve para clicar uma unica vez na lista e abri o menu
public void onItemClick(AdapterView<?> arg0, View v, int arg2,
long arg3) {
openContextMenu(v);
}
});
registerForContextMenu(list);
Essa parte é do botão salvar:
final Button btnSalvar = (Button) findViewById(R.id.btnSalvar);
btnSalvar.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
botao_salvarcategoria(btnSalvar);
}
});
}
public void botao_salvarcategoria(View v) {
EditText edtCategoria = (EditText) findViewById(R.id.edtCategoria);
String valorCategoria = edtCategoria.getText().toString();
Dao dao = new Dao(this);
dao.inserircategoria(valorCategoria);
finish();
E essa parte é da Dao, onde estou inserindo:
public void inserircategoria(String categoria) {
ContentValues valorCategoria = new ContentValues();
valorCategoria.put("categoria", categoria);
abrir();
ControleFinanceiro.insert("categoria", null, valorCategoria);
fechar();
}
E por fim criação da tabela:
String categoria = "Create table categoria" +
"(_id INTEGER PRIMARY KEY AUTOINCREMENT, " +
"descricao TEXT);";
db.execSQL(categoria);
Desde já agreço pela atenção!
att,
Andreia