动态改变listview的高度

<span style="color:#ff0000;">Utiltools.setListViewHeightBasedOnChildren(lv);//使用的时候</span>
public static void setListViewHeightBasedOnChildren(ListView listView) {


			ListAdapter listAdapter = listView.getAdapter();
			if (listAdapter == null) {
				return;
			}


			int totalHeight = 0;
			for (int i = 0, len = listAdapter.getCount(); i < len; i++) {
				View listItem = listAdapter.getView(i, null, listView);
				listItem.setLayoutParams(new LayoutParams(
						LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
				listItem.measure(0, 0);
				totalHeight += listItem.getMeasuredHeight();
			}


			ViewGroup.LayoutParams params = listView.getLayoutParams();
			params.height = totalHeight
					+ (listView.getDividerHeight() * (listAdapter.getCount() - 1));
			listView.getDividerHeight();
			listView.setLayoutParams(params);
		}
		


你可能感兴趣的:(动态改变listview的高度)