[英]android-ListView inside scrollView not working properly
我必須在scrollView內使用listView,出於某些原因,我不能將addHeader用於addFooter。
當我將適配器設置為listView時,我更改了它的高度,但是無法正常工作。
這是我的代碼:
lv.setAdapter(ladap);
int totalHeight = 0;
for (int size = 0; size < ladap.getCount(); size++) {
View listItem = ladap.getView(size, null, lv);
listItem.measure(0, 0);
totalHeight += listItem.getMeasuredHeight();
}
ViewGroup.LayoutParams params = lv.getLayoutParams();
params.height = totalHeight + (lv.getDividerHeight() * (ladap.getCount() - 1));
lv.setLayoutParams(params);
lv.requestLayout();
結果是:
如您所見,listview在頁面中間完成,但仍然滾動很多。
如何使它正確?
您無需將ScrollView與ListView一起使用。 如Android開發文檔中所述 :
永遠不要將ScrollView與ListView一起使用,因為ListView負責其自身的垂直滾動。 最重要的是,這樣做會挫敗ListView處理大型列表的所有重要優化,因為它有效地迫使ListView顯示其整個項目列表,以填充ScrollView提供的無限容器。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.