ScrollView嵌套ListView及ListView嵌套的高度计算方法
2018-01-04 14:18
507 查看
引言
在Android开发中,我们有时会需要使用ScrollView中嵌套ListView的需求。例如:在展示信息的ListView上还有一部分信息展示区域,并且要求这部分信息展示区域在ListView信息比较多的时候也是可以滑动的,而不是固定不变的。这时,我们一般会将ScrollView和ListView嵌套在一起使用。但是这会导致ListView展示不全,然后也会有滑动冲突问题。下面我们来看看怎么解决。
解决方案
主动计算和设置ListView的高度,这样就可以合理的展示ListView的高度。代码如下:
public void setListViewHeightBasedOnChildren(ListView listView) { // 获取ListView对应的Adapter ListAdapter listAdapter = listView.getAdapter(); if (listAdapter == null) { return; } int totalHeight = 0; // listAdapter.getCount()返回数据项的数目 for (int i = 0; i < listAdapter.getCount(); i++) { View listItem = listAdapter.getView(i, null, listView); // 计算子项View 的宽高 listItem.measure(0, 0); // 统计所有子项的总高度 totalHeight += listItem.getMeasuredHeight(); } ViewGroup.LayoutParams params = listView.getLayoutParams(); params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1)); // listView.getDividerHeight()获取子项间分隔符占用的高度 // params.height最后得到整个ListView完整显示需要的高度 listView.setLayoutParams(params); }
以上这篇ScrollView嵌套ListView及ListView嵌套的高度计算方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
您可能感兴趣的文章:
相关文章推荐
- 计算并设置ListView的高度,防止嵌套ScrollView监听出现问题,(两种方法,一种自定义,一种测量)
- ScrollView嵌套ListView,gridView只显示一行解决方案 (以及计算显示高度错误问题)
- 四种方法解决scrollview嵌套listview,listview高度确定问题
- 深入理解布局容器绘制,解决ListView嵌套listview,或者ScrollView嵌套listview,gridview的高度问题解决方法
- 关于ScrollView中嵌套listView,textView存在多行时,listView高度计算不正确。
- 计算listview的高度,这样才能在scllowView里面嵌套listview不会出现高度问题
- 浅谈ScrollView嵌套ListView及ListView嵌套的高度计算
- ScrollView嵌套ListVeiw时代码计算listView的高度
- ListView(ScrollView)嵌套ListView、GridView显示不全,内容大于一行计算的高度不正确的解决办法
- ScrollView中嵌套ListView高度无法计算问题
- android自动计算高度的listview 嵌套在ScrollView中使用
- scroll嵌套多个listview,listview中的TextView超过一行,只计算 一行高度
- Android listview只显示一行的解决方法(计算listview的高度)
- Android 当ScrollView里面嵌套Listview时计算高度
- ListView嵌套ScrollView后,设置dividerHeight属性后高度计算
- ScrollView嵌套listview,并计算listview的高度
- 分享一个listview嵌套listview需要重置子listview高度的调用方法
- Android中动态计算ListView高度方法(适用于ScrollView嵌套)
- android ScrollView 里嵌套listview listview 重新计算高度
- 解决:ScrollView嵌套ListView导致无法正确计算ListView的高度之动态加载图片高度常规方法失效。