/**
* 动态设置listview的高度
* @param listView
*/
public void setListViewHeightBasedOnChildren(ListView listView) {
ListAdapter adapter = listView.getAdapter();
if(adapter != null) {
int totalHeight = 0;
for(int i=0; i<adapter.getCount(); i++) {
View listItem = adapter.getView(i, null, listView);
listItem.measure(0, 0);
totalHeight += listItem.getMeasuredHeight();
}
ViewGroup.LayoutParams params = listView.getLayoutParams();
params.height = totalHeight + (listView.getDividerHeight() * (adapter.getCount() - 1));
((MarginLayoutParams) params).setMargins(0, 0, 0, 0);
listView.setLayoutParams(params);
System.out.println(params.height + "===" + adapter.getCount());
}
}
Android 一个Activity里面2个ListView垂直排列,动态设置ListView高度
最新推荐文章于 2024-05-22 18:09:38 发布