关于ScrollView里面包含listView只能显示listView的第一行问题解决方案

在使用的时候加入下面这个方法:

对listview使用适配器后使用下面这个方法就可以解决问题。

问题在listview和scrollview都有滚动属性。

 

public 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);
}

posted on 2013-04-18 14:55  南京-张辉辉  阅读(136)  评论(0编辑  收藏  举报

导航