2011-09-10 15 views
7

私はコメント付きリストビューを持っています。コメントの長さは異なります(たとえば、1行から20まで)。 そして、私はこのリストビューをスクロールしている間、標準のスクロールバーは、この時点でスクロールしているコメントに応じて増減します。 どうしてですか?さまざまなアイテムサイズのAndroidスクロールバーの長さ

答えて

12

多分これはあなたが必要とするものです。ただ、私はこれがなぜ起こるかにこのオンラインを見つけ、それをfalse

setSmoothScrollbarEnabled

+0

おかげで、これはしばらくのに役立ちます。しかし、滑らかなスクロールバーはあまりクールではありません。私がスクロールしている間、遅れている。私はこれが良いではないと思う、スクロールバーのサイズを変更すると、市場では、例えば、コメントでは、それが存在します。 – jumper0k

7

を設定します。なぜGoogleがメイクリストを高さに依存しないと決めたのか分かりません。

ListViewは、可変高さを有するアイテムが含まれている場合、ListViewは親指の高さは、ビュー内のアイテムの数に基づいて算出されるので、それに含まれるすべてのアイテムの完全な高さを知る方法がないと現在表示されている項目の数。現在表示されている項目の数が異なるため、親指の高さも変わります。

iOSでは、ビューが表示される前に同等のコンポーネント(UITableView)がUITableViewDataSourceからすべてのアイテムの高さを要求するため、全体的な親指のサイズを把握して一貫性を保つことができます。

マックス・ハウエル、 Last.fm開発者
Why does the scroll bar change its length during scrolling?

+0

リストビューの高さを知るには、すべてのアイテムを作成し、その高さの合計を計算する必要があります。しかし、これは何が起こるかではなく、必要なときにアイテムが作成されるので(画面のみ)、高さを得る方法がありません。これは完璧ではありませんが、これは最も効果的な作業方法です。 (特に何千ものアイテムのリストがある)。 – AxelH

関連する問題