Fala galela,
Estou aqui para tirar um duvida sobre o listview e base adapter.
Quando seleciono algum item na minha lista, faço uma serie de validações/busca e alem disso percebi que passa dezenas de vezes dentro do método getView no adapter.
É assim mesmo que funciona? Da pra melhorar alguma coisa?
Meu adapter já esta customizado da forma eficiente, estou inflando ele somente quando a view for null e utilizando uma classe viewholder.
Questiono isso porque dependendo se tiver um solução meu sistema poderá ficar mais rápido/eficiente.
Att.
Leandrooooo
O a quantidade de chamadas do getview é = quantidade de linhas que o listView terá, é um padrão necessário… não tem muito o que fazer.
Se sua busca de dados para o preenchimento da lista é muito pesado/demorado uma solução é utilizar uma Thread/AT que faz as buscas e através de uma callback enviar o dado para o adapter de uma posição e por sua vez chamar notifDataSetChanged toda vez que chegar uma nova “posição” da lista. Assim ela vai ser incrementada em tempo real de execução, ela já criada rapidamente e completada de acordo que é feita as leituras de dados.
fabriciov,
O problema não está no preenchimento da lista, até que está rapido. E que a cada selecionado lista vejo que ele passa varias vezes e isso pelo que percebo fica um lento.
Mais gostei da sua dica, tem algum exemplo que possa me enviar? Eu to aprendendo e ainda nem vi esse callback, o que seria?
Esse notifDataSerChanged ja vi que é para atualizar a lista na tela.
Desde já obrigado.
Att.
Leandrooooo