ScrollView中需要显示ListView和TextView
ListView通常只能显示一个多一点Item的内容。
ScrollView与ListView都可以滚动,但是当两者并存时,ListView不能捕获滚动事件,所以显示不全整个ListView中的内容。
解决方法如下:
public void dealWith(ListView lv){
ListAdapter adapter = lv.getAdapter(); //获取与ListView适配的Adapterif(adapter==null){
return;
}
int totalHeight = 0; //包含所有item后的ListView的总共高度
for(int i=0;i<lv.getCount();i++){
View viewItem = adapter.getView(i, null, lv);
viewItem.measure(0, 0);
totalHeight += viewItem.getMeasuredHeight();
}
ViewGroup.LayoutParams params = lv.getLayoutParams(); //给ListView 设置布局参数
params.height = totalHeight;
lv.setLayoutParams(params);
}