2011-09-10 14 views

risposta

12

Forse questo è quello che ti serve. Basta impostare false

setSmoothScrollbarEnabled

+0

Grazie, questo aiuterà per un po '. Ma la barra di scorrimento non liscia non è così bella. È in ritardo, mentre sto scorrendo. Penso che questo non sia buono, quando la barra di ridimensionamento si ridimensiona, ma in un mercato, ad esempio, in un commento, è presente. – jumper0k

7

Ho trovato questa online su perché questo accade. Non sono sicuro del motivo per cui Google ha deciso di rendere le liste più agevoli.

Se il ListView contiene articoli con altezze variabili, il ListView non ha modo di conoscere l'intera altezza di tutti gli elementi che contiene così l'altezza del pollice è calcolato sulla base del numero di elementi nella vista e la numero di elementi attualmente visibili. Il numero di elementi attualmente visibili varia, quindi anche l'altezza del pollice varia.

Su iOS il componente equivalente (UITableView) richiede l'altezza di tutti gli articoli da UITableViewDataSource prima che venga visualizzata la vista in modo che la dimensione complessiva del pollice possa essere conosciuta e mantenuta coerente.

Max Howell, Last.fm sviluppatore
Why does the scroll bar change its length during scrolling?

+0

Per essere in grado di conoscere l'altezza del listview, è necessario creare ogni elemento e fare la somma della loro altezza. Ma questo non è quello che succede, gli oggetti vengono creati quando necessario (solo sullo schermo) quindi non c'è modo di ottenere l'altezza. Questo non è perfetto ma questo è il modo più efficace per lavorare. (specialmente con una lista di migliaia di articoli). – AxelH

Problemi correlati