ScrollView在底部显示大空间

时间:2012-11-08 06:51:22

标签: android listview scrollview

我在Button添加了ListViewScrollView。下面将Button添加到ListView中的ScrollView,但问题是它在按钮和ListView之间显示了较大的空间。这是我的代码

ReservationDrinkListAdapter adp = new ReservationDrinkListAdapter(this,
            KukumberApplication.getInstance().getBottleService().menuItems);
        list.setAdapter(adp);
        Util.setListViewHeightBasedOnChildren(list);

以下方法用于在ListView中显示ScrollView

 public static void setListViewHeightBasedOnChildren(ListView listView)
   {
       ListAdapter listAdapter = listView.getAdapter(); 
       if (listAdapter == null) {
           // pre-condition
           return;
       }

       int totalHeight = 0;
       for (int i = 0; i < listAdapter.getCount(); i++) {
           View listItem = listAdapter.getView(i, null, listView);
           listItem.measure(0, 0);
           totalHeight += listItem.getMeasuredHeight();
       }

       ViewGroup.LayoutParams params = listView.getLayoutParams();
       params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1));
       listView.setLayoutParams(params);
   }

我做错了什么?任何建议和示例代码将不胜感激。

1 个答案:

答案 0 :(得分:0)

在scrollview中使用listview在技术上是可行的,但完全没有推荐,按照你的方式进行操作(扩展整个列表以便滚动视图适应所有列表)与适配器视图(性能)的整个点相反并将导致你遇到很多问题。

您可以在以下答案中看到更多相关信息: How can I put a ListView into a ScrollView without it collapsing? How to add two listview in scrollview Why ListView cannot be used in a ScrollView? ListView inside ScrollView is not scrolling on Android

那里还有更多。