Android 关于listView 显示不全的问题
来源:互联网 发布:歌曲mv制作软件 编辑:程序博客网 时间:2024/05/19 03:43
刚刚在项目中发现一个bug,我是用ScrollView 嵌套 ListView的,但是我的数据只能显示一条,开始我还以为是数据有错误,经过排查以后发现是正确的
百度发现 android的架构好像没有考虑这种ListView 嵌套ListView 或者 ScrollView 嵌套 ListView 的架构,所以会出现显示不全的问题。
搜索以后发现一个很好用的工具类,解决了这个问题
package com.linker.utils;import android.view.View;import android.view.ViewGroup;import android.widget.ListAdapter;import android.widget.ListView;public class Utility { public static void setListViewHeightBasedOnChildren(ListView listView) { //获取ListView对应的Adapter ListAdapter listAdapter = listView.getAdapter(); if (listAdapter == null) { // pre-condition return; } int totalHeight = 0; for (int i = 0, len = listAdapter.getCount(); i < len; 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); }}
在ListView.setAdapter(adapter)之后,只要调用这个方法,就可以把数据显示完全了~
listview.setAdapter(adapter);Utility.setListViewHeightBasedOnChildren(listview);
感谢http://www.cnblogs.com/zhujiabin/p/5807569.html
阅读全文
1 0
- android 关于listView 显示不全的问题
- Android 关于listView 显示不全的问题
- Android ScrollView里嵌套listview,listview显示不全的问题
- android ScrollView嵌套ListView listview显示不全的问题
- 关于listview,gridview里面数据显示不全的问题
- Android之ScrollView嵌套ListView显示不全的问题
- Android经验ScrollListView嵌套ListView显示不全的问题
- 关于android的ScrollView套listView展示不全的问题
- android ListView嵌套GridView显示不全问题
- android ListView嵌套GridView显示不全问题
- listview显示不全问题
- Android在ListView中嵌套ListView 解决嵌套的listview显示不全的问题
- ScrollView中listview显示不全的问题
- ScrolView 嵌套ListView 显示不全的问题
- listview嵌套GridView显示不全的问题
- 关于在ScrollView中嵌套ListView,ListView显示不全的问题
- listview嵌套listview子listview显示不全的问题
- android listView多层嵌套listView显示不全问题
- 【脚本语言系列】关于Python持久化shelve,你需要知道的事
- hdfs haadmin使用,DataNode动态上下线,NameNode状态切换管理,数据块的balance,HA下hdfs-api变化(来自学习资料)
- SpringBoot 定时任务
- 在UI中显示Forecast list(十一)
- 使用Android广播碰到的问题
- Android 关于listView 显示不全的问题
- MongoDB的配置与复制集
- 模板引擎 freemarker
- 经济学研究方法兼谈夜光遥感数据在经济中的应用报告小结
- 1055. 集体照 (25)
- WebGoat 开发者版安装教程
- String split方法
- Q107:Mac系统下GDB对PBRT-V3进行debug
- 浅析前端MVC、MVP、MVVM模式