当我们的程序中有多个ListView 时怎么设置ListView 的高度成了一个问题。
ListView中数据个数是不确定的,显然不能将高度写死。
但通过测试发现,无论将高度设置为匹配父控件还是包裹内容,都不能正常显示所有内容。
通过在网上查找资料,我找到如下解决办法。
首先将多个ListView包裹在LinerLayout中,然后将LinerLayou放到ScrollView中。这样多个ListView 就可以滚动了。
关于ListView 的高度,用以下代码可以设置

private void setListViewHeightBasedOnChildren(ListView listView){ListAdapter adapter = listView.getAdapter();if(adapter == null){return;}int totalHeight = 0;for(int i=0;i<adapter.getCount();i++){View listItem = adapter.getView(i,null,listView);.getResources().getDisplayMetrics().widthPixels, View.MeasureSpec.EXACTLY), 0);//此处很重要,不要用measure(0,0);否则item中如果有换行,显示不完全totalHeight += listItem.getMeasuredHeight();}ViewGroup.LayoutParams params = listView.getLayoutParams();params.height = totalHeight+(listView.getDividerHeight()*(adapter.getCount()-1));listView.setLayoutParams(params);}

ListView 设置高度为刚好能包裹子元素相关推荐

  1. html5shiv主要解决IE6-8 无法识别HTML5的新标签,父节点不能包裹子元素,以及应用CSS样式...

    html5shive html5shiv主要IE6-8解决: 1,HTML5提出的新的元素不被IE6-8识别. 2,这些新元素不能作为父节点包裹子元素, 3,并且不能应用CSS样式.让CSS 样式应用 ...

  2. [Web前端] 子元素设置高度为100%, 却没有与父元素对齐高度.

    大概描述一下我遇到的情况. 父元素没有明确指定高度, 但是其中一个子元素的高度是确定的, 并且通过这个高度将父元素的高度撑起来. 另一个子元素的高度是100%, 即, 我想要使它与父元素的高度统一. ...

  3. html让空间高度跟随父级,CSS子元素跟父元素的高度一致的实现方法

    绝对定位方法: (1)将父元素设置为相对定位,不写父元素的高度时,会随着左边的子元素高度变化而变化 .parent { /*关键代码*/ position: relative; /*其他样式*/ wi ...

  4. 【CSS】绝对定位元素设置 水平 / 垂直 居中 ( 绝对定位元素居中设置 - 先偏移 50% 再回退子元素一半尺寸 | 绝对定位居中设置 )

    文章目录 一.问题提出 二.绝对定位 居中设置 1.设置固定尺寸 2.先偏移50%再回退固定值 三.绝对定位元素 水平 / 垂直 居中 一.问题提出 绝对定位 不能通过 设置 margin: auto ...

  5. flex 子元素占满剩余高度 与 flex:1 的子元素 overflow:hidden 失效

    这几天使用flex开发大屏,遇到一个印象比较深的问题就是flex的子元素,在其他兄弟元素的高度不定的情况下,如何占满父元素的剩余空间? 效果图: 要点就是: 1.父元素要设置 display: fle ...

  6. 微信小程序swiper高度自适应,swiper的子元素高度不固定

    小程序 swiper 组件默认高度150px,并且如果子元素过高,swiper不会自适应高度 解决方案一: (总体来说不够完美,适合满屏滑动) 如果不是满屏的状态,用scroll-view IOS滑动 ...

  7. 关于flex布局中,父元素高度auto,由一子元素撑开,另一子元素自适应高度问题

    .expressRecord-single-close {//父元素样式 width: 100%; height: auto; display: flex; justify-content: flex ...

  8. 父元素设置overflow: overlay; 或 overflow: scroll; 或 overflow: auto; 如果子元素超出父元素内容,父元素会被子元素超出部分撑大至子元素同样大小

    发现 父元素设置overflow: overlay; 或 overflow: scroll; 或 overflow: auto; 如果子元素超出父元素内容,父元素会被子元素超出部分撑大至子元素同样大小 ...

  9. [译] 关于CSS中的float和position (父容器div内的子元素div为float时,父元素无法撑开(或高度自适应)的解决方式)

    测试案例:http://blog.csdn.net/goodshot/article/details/44408245 当构建页面排版时,有不同的方法可以使用.使用哪一种方法取决于具体页面的排版要求, ...

最新文章

  1. JavaScript: 设置Cookie
  2. python绘图—— matplotlib
  3. 网络IPC:套接字之建立连接
  4. 匹配特殊字符的正则表达式
  5. android 开发 切图,Android开发,切图网站推荐。
  6. ubuntu下常用的抓包软件_macOS下最常用也最好用的几款解压缩软件,你值得拥有...
  7. CPN(Cascaded Pyramid Network for Multi-Person Pose Estimation) 姿态估计
  8. NGS检测ALK融合大起底--转载
  9. 秒杀笔记(乐观锁+令牌桶+Redis缓存)
  10. ROS学习记1——玩弄小海龟
  11. Android学习笔记:实现app启动界面跳过倒计时功能
  12. 关于oracle的递归查询
  13. 使用docker构架服务 jekyll 和 java应用程序
  14. Python的wheel文件安装
  15. 短视频矩阵系统,抖音矩阵系统源码,抖音SEO源码。
  16. 【Designing ML Systems】第 11 章 :机器学习的人性方面
  17. 如何一次高效的插入200MB(50万条)的insert语句
  18. 网站算法石榴算法严厉打击下 网站盈利方向何在
  19. 计算机知识传播策划书,计算机学院硬件知识讲座活动策划书
  20. python数据解析——xpath爬取文字和图片

热门文章

  1. AI:一张高清长图教你读懂AI简史《1308年 → 至今》
  2. Py之pyserial:Python的pyserial库的简介、安装、使用方法之详细攻略
  3. 深入浅出统计学 第一章 数据的可视化
  4. TypeError: Can not convert a float32 into a Tensor or Operation.
  5. react中component存在性能问题
  6. maven dependency中scope=compile 和 provided区别
  7. leetcode347 - Top K Frequent Elements - medium
  8. day05 Spring中自定义注解的用处-之获取自定义的Servie
  9. Hibernate 之单向多对一映射及其衍生问题
  10. Java语言基础(数组)