如何设置listview每个item高度

时间:2023-11-28 21:39:50

据我所了解,listview每行的宽度是由 inflater填充布局中高度最大的那个控件的高度。。。

public  void setListViewHeightBasedOnChildren(ListView listView) 
        {
                //获取ListView对应的Adapter
                ListAdapter listAdapter = listView.getAdapter();
                if (listAdapter == null) {
                        return;
                }

int totalHeight = 0;
                for (int i = 0, len = listAdapter.getCount(); i < len; i++)
                {   
                        totalHeight += 42; 
                }

ViewGroup.LayoutParams params = listView.getLayoutParams();
                params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1));
                //listView.getDividerHeight()获取子项间分隔符占用的高度
                //params.height最后得到整个ListView完整显示需要的高度
                listView.setLayoutParams(params);
        }

http://www.apkbus.com/android-73425-1-1.html


在item的layout文件中,用android:layout_height设置item的高度。
运行,高度设置无效。

解决办法:
给item设定minHeight,即可。

http://www.blogjava.net/anchor110/articles/362387.html