Acho que cometi um belo engano na minha resposta anterior.
Pelo que entendi agora olhando a figura, você não precisa e não vai chamar notifyDataSetChanged aqui no clique do ImageButton.
O único ponto que eu quis destacar na minha resposta e que vai resolver o seu problema é que não faz sentido chamar notifiyDataSetChanged( ) de dentro do Adapter. Deixe ele em uma variável e passe a mensagem, no momento em que isso for oportuno.
Por fim, ArrayAdapter é apenas mais prático que BaseAdapter IMHO.
[]s
----------------------------------------------------------
Ubiratan Soares
2012/9/5 Felipe Aron <felipearon@gmail.com>
Deixa ver se entendi:- Disse pra chamar o notifyDataSetChanged(), mas isso estou fazendo - dentro do adapter, no evento onClick() do ImageButton. O problema é que o "sumario - Valor Total" está na Activity. Como fazer pra Activity identificar a mudança do adapter e atualizar o valor total?- ArrayAdapter é melhor que BaseAdapter? Pode você dar mais detalhes? Agora to curioso. heheEm 5 de setembro de 2012 14:56, Ubiratan Soares <ubiratan.f.soares@gmail.com> escreveu:
Cara, em algum lugar você vai ter a variável x (que herda de BaseAdapter). Após interceptar o clique no item (ou na subview do X vermelho, que seja), exclua o item do array e chame x.notifyDataSetChanged( ). A única restrição que é própria aqui é que isso tem que ser na UIThread.Aliás, uma dica : tem que se acostumar a usar uma coisa do tipo ArrayAdapter<Item>, onde Item vem do seu modelo. BaseAdapter te obriga a fazer coisas dummys que ArrayAdapter já vai fazer para você, já que em 99.9% dos casos um ListView tem a intenção de mostrar uma LISTA de objetos que já vai no construtor do Adapter, é mais compreensivo e permite até mesmo forçar alguma ordenação por critério simples implementando Comparable no objeto de modelo.[]s
----------------------------------------------------------
Ubiratan Soares
2012/9/5 Felipe Aron <felipearon@gmail.com>Galera, to montando uma tela (em anexo) que possui um ListView e essa é alimentada por um BaseAdapter.No item da lista, tem um "X" para remover o item em questão e fazendo isso o BaseAdapter chama o método notifyDataSetChanged() para atualizar meu ListView.Até aqui tudo as mil maravilhas.Porém na tela princpal (onde está a listView), tem um sumário que mostra o valor total dos itens. Eis o problema:- Como interceptar o método notifyDataSetChanged() na tela principal pra eu poder atualizar o valor total? -- To pensando da forma correta?






0 comentários:
Postar um comentário