簡體   English   中英

scrollView內的android-ListView無法正常工作

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM