2011-01-02 7 views
6

In Zwitscher Ho uno ListView che visualizza una serie di tweet. L'utente può quindi ricaricare la timeline e se ci sono nuovi tweet, il nuovo elenco viene caricato nel all'adattatore lista (più alcuni vecchi) e ho scorrere fino alla fine dell'elenco tramiteListView non reagisce più a onclick dopo una chiamata a setSelection()

listView.setSelection(x); 

dove x è la numero dei tweet più vecchi di quelli appena caricati. Funziona molto bene Ma sfortunatamente questo "disabilita" i gestori onItemClick() e onItemLongClick() sulla vista. Se poi (per esempio da un pulsante) chiamo

listView.setSelection(0); 

I gestori per onItemClick() e onItemLongClick() sono "abilitati" di nuovo.

Ho verificato che i gestori sono ancora impostati su listView dopo la chiamata a setSelection(x). E disabilitare la chiamata a setSelection(x) non "disabilita" i gestori.

Qualche idea su cosa sto facendo male?

La sorgente completo è qui: https://github.com/pilhuhn/ZwitscherA/blob/master/src/de/bsd/zwitscher/TweetListActivity.java e le linee in questione sono in onPostExecute() on line 417

+0

Come si aggiorna la lista, spero che venga notificata come modificata? E proprio come un hack e se si imposta la selezione su x poi su 0 e poi di nuovo su x funziona. –

risposta

1

non riuscivo a riprodurre quel. onItemClick() viene chiamato dopo qualsiasi setSelection. Cerca di isolare il problema creando un caso di prova che si riproduca. Se ci riesci, io dovrei inviare un bug ad Android.

Problemi correlati