//处理ScrollView和ListView冲突问题,计算ListView的Item高度
public void setListViewHeightBasedOnChildren(ListView listView) {
ListAdapter listAdapter = listView.getAdapter();
if (listAdapter == null) {
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));
((MarginLayoutParams) params).setMargins(10, 10, 10, 10);
listView.setLayoutParams(params);
}转载于:https://blog.51cto.com/shaotao/1317749
本文提供了一种解决ScrollView和ListView冲突的方法,通过计算ListView中所有Item的高度来设置ListView的高度,从而避免了两者之间的滚动冲突。适用于Android应用开发中需要同时使用ScrollView和ListView的场景。
604

被折叠的 条评论
为什么被折叠?



