android ListView 嵌套scrollView 自适应高度

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Top_zhou_zmj/article/details/52024375

很多时候我们的需求要求我们在scrollView里面嵌套ListView,但是直接嵌套的话,ListView只会显示一个Item,这时候就需要ListView根据Item的数量来自适应高度了。

// 设置ListView高度
public static 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));
    listView.setLayoutParams(params);
}



展开阅读全文

没有更多推荐了,返回首页