您的位置:首页 > 其它

解决ListView嵌套在ScrollView中只显示一行的问题

2017-02-27 13:32 337 查看
/**
* 解决ScrollView中嵌套ListView,ListView只显示一行的问题
*
* @param listView
*/
public void setListViewHeightBaseOnChildren(ListView listView) {
// 获取listView对应的adapter
ListAdapter listAdapter = listView.getAdapter();
if (listAdapter == null) {
return;
}
int totalHeight = 0;
for (int i = 0, len = listAdapter.getCount(); i < len; i++) {
// listAdapter.getCount()返回数据项目的数目
View listItem = listAdapter.getView(i, null, listView);
// 计算子项view的宽高
listItem.measure(0, 0);
// 统计所有子项的总高度
totalHeight += listItem.getMeasuredHeight();
}
ViewGroup.LayoutParams params = listView.getLayoutParams();
params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1));
// listView.getDivderHeight()获取子项间分隔符占用的高度
listView.setLayoutParams(params);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐