Boa tarde!
Amigos, estou com dificuldade de implementar um listener para o checkbox de uma lista. Tem uma lista de itens que é colocada numa listview. Cada linha tem “_id do item” “descrição do item” “valor do item” “checkbox”. Quando o checkbox estiver marcado, insere no banco, desmarcado deleta do banco em tempo real. Os métodos para inserir e deletar estão prontos e funcionando. O problema é que eu nao consigo fazer o listener do checkbox, já vi vários exemplos mas não funciona. Vejam meu código:
public class CardapioV4 extends ListActivity {
Button btEnviar, btSair, btInserir;
TextView tvNomeCliente, tvVlrTotal;
CheckBox chBox1;
DBAdapterV4 db;
Cursor cursor;
int selecionado;
protected static final String CATEGORIA = "CARDÁPIO";
private final List<String> selecionados = new ArrayList<String>();
int valor, idCliente, numeroPedido = 1;
String idItem, nomeCliente = "";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main2);
db = new DBAdapterV4(getApplicationContext());
db.open();
cursor = db.getCursor();///select * from item
idCliente = 0;
Intent it = getIntent();
Bundle parametro = it.getExtras();
idCliente = parametro.getInt("id");
String[] from = {DBAdapterV4.COLUNA_ID_ITEM, DBAdapterV4.COLUNA_DESCRICAO_ITEM, DBAdapterV4.COLUNA_VALOR_ITEM};
int[] to = new int[]{R.id.tvId,R.id.tvDescricao,R.id.tvVlrUnit};
SimpleCursorAdapter rec = new SimpleCursorAdapter(this,R.layout.colunaslista, cursor, from, to);
setListAdapter(rec);
Log.i(CATEGORIA, "" + nomeCliente);
cursor = db.consultarCliente(idCliente);
nomeCliente = cursor.getString(cursor.getColumnIndex(DBAdapterV4.COLUNA_NOME_CLIENTE));
tvNomeCliente.setText(nomeCliente);
cursor.close();
db.close();
}
@Override
public void onListItemClick (ListView l, View v, int position, long id) {
chBox1 = (CheckBox) findViewById(R.id.checkBox1);
Toast.makeText(this, "Você selecionou: " + item, Toast.LENGTH_SHORT).show();
chBox1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(((CheckBox) v).isChecked()) {
Toast.makeText(CardapioV4.this, "Selected", Toast.LENGTH_SHORT).show();
}else{
Toast.makeText(CardapioV4.this, "Not selected", Toast.LENGTH_SHORT).show();
}
}
});
}
}
Alguém pode me ajudar?