ListView和GridView根据item数量自适应高度的工具类封装
2017-08-11 11:12
567 查看
很多时候我们使用ListView和GridView由于item的高度不确定,是动态变化的,
这时候就需要自适应高度,可以考虑新建工具类放入下边的静态方法,使用的时候用类名调用方法传入GridView或者listview对象即可实现效果
这时候就需要自适应高度,可以考虑新建工具类放入下边的静态方法,使用的时候用类名调用方法传入GridView或者listview对象即可实现效果
/** * ListView自适应高度的方法 * * @param listView */ public static void setListViewHeightBasedOnChild(ListView listView) { // 获取ListView对应的Adapter ListAdapter listAdapter = listView.getAdapter(); if (listAdapter == null) { return; } int totalHeight = 0; for (int i = 0; i < listAdapter.getCount(); i++) { // listAdapter.getCount()返回数据项的数目 View listItem = listAdapter.getView(i, null, listView); listItem.measure(0, 0); // 计算子项View 的宽高 totalHeight += listItem.getMeasuredHeight(); // 统计所有子项的总高度 } ViewGroup.LayoutParams params = listView.getLayoutParams(); params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1)); // listView.getDividerHeight()获取子项间分隔符占用的高度 // params.height最后得到整个ListView完整显示需要的高度 listView.setLayoutParams(params); } }
相关文章推荐
- GridView(网格布局)基本用法和根据item数量动态自适应显示高度,添加分割线,禁止滑动
- 固定列数,根据item数量动态设置GridView高度的方法
- [置顶] android根据屏幕高度改变item占ListView高度
- ExpandableListView 里面嵌套GridView实现高度自适应
- Android GridView自适应Item高度
- ScrollView嵌套ListView或GridView等,使得其高度自适应解决方案
- ViewPager的高度根据item的高度自适应
- GridView 和ListView中自适应高度
- 根据item的高度以及长度设置listview的高度,
- ListView与GridView自适应高度,与Bug解决gridView.getNumColumns() = -1
- GridView Item 大小可能不一样,如何保持同一行的Item 高度大小相同,且GridView高度自适应!
- android自定义gridview,根据item自动适应高度
- [Android Pro] listView和GridView的item设置的高度和宽度不起作用
- ListView中根据手机屏幕高度动态设置只显示一屏幕的item个数
- GridView自适应高度后,第一个Item点击无效
- GridView Item 大小可能不一样,如何保持同一行的Item 高度大小相同,且GridView高度自适应!
- Android GridView之添加分隔线,动态设置高度,实现高度自适应,并解决第一个item不显示的问题
- android给Listview或GridView的item设定高度(可能是最好的解决方案)
- ListView 与 GridView 在ScrollView中自适应高度
- Android 让GridView的高度为Wrap_content根据内容自适应高度