安卓ListView根据Adapter动态设置高度

来源:互联网 发布:云计算saas实验 编辑:程序博客网 时间:2024/05/16 07:03

1. ListView根据Adapter动态设置高度,使ListView高度正好显示出所有的Item,不用滚动条

public void setListViewHeightBasedOnChildren(ListView listView) {    //获取listview的适配器    ListAdapter listAdapter = listView.getAdapter(); //item的高度    if (listAdapter == null) {        return;    }    int totalHeight = 0;    for (int i = 0; i < listAdapter.getCount(); i++) {        View listItem = mAdapter.getView(i, null, listView);        listItem.measure(0, 0); //计算子项View 的宽高 //统计所有子项的总高度        totalHeight += listItem.getMeasuredHeight()+listView.getDividerHeight();    }    ViewGroup.LayoutParams params = listView.getLayoutParams();    params.height = totalHeight;    listView.setLayoutParams(params);}

2 0
原创粉丝点击