我在Button
添加了ListView
和ScrollView
。下面将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);
}
我做错了什么?任何建议和示例代码将不胜感激。
答案 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
那里还有更多。