Android 关于listView 显示不全的问题
2017-06-10 19:12
375 查看
刚刚在项目中发现一个bug,我是用ScrollView 嵌套 ListView的,但是我的数据只能显示一条,开始我还以为是数据有错误,经过排查以后发现是正确的
百度发现 android的架构好像没有考虑这种ListView 嵌套ListView 或者 ScrollView 嵌套 ListView 的架构,所以会出现显示不全的问题。
搜索以后发现一个很好用的工具类,解决了这个问题
在ListView.setAdapter(adapter)之后,只要调用这个方法,就可以把数据显示完全了~
感谢http://www.cnblogs.com/zhujiabin/p/5807569.html
百度发现 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
相关文章推荐
- Android 关于listView 显示不全的问题
- android 关于listView 显示不全的问题
- android ListView嵌套GridView显示不全问题
- Android开发 详解嵌套ListView、ScrollView布局显示不全的问题
- android 关于 ScrollView嵌套GridView,ListView 显示和滑动的问题
- Android gridview 嵌套在listview中显示不全问题
- Android -关于注册Google Map Api Key 的方法和网页显示不全的问题
- android 关于 ScrollView嵌套GridView,ListView 显示和滑动的问题
- android 关于 ScrollView嵌套GridView,ListView 显示和滑动的问题
- android_最简单办法解决滑动嵌套listview显示不全和滑动问题
- Android 关于在ScrollView中加上一个ListView,ListView内容显示不完全(总是显示第一项)的问题的两种简单的解决方案
- android ListView嵌套GridView显示不全问题
- Android学习 之 问题&解答 ScrollView中嵌套ListView时显示不全的简便解决方案
- Android 在ListView嵌套GridView中出现的点击事件冲突的处理以及gridview显示不全的问题
- 关于android的listview数据列表显示的下拉和刷新报错问题
- [Android]在ListView嵌套GridView中出现的点击事件处理以及gridview显示不全的问题
- Android 关于重写一个居中的Dialog时,背景图片显示不全的问题。Dialog的style属性介绍
- Android开发笔记——ScrollView中解决listview,gridview显示不全问题
- android 关于 ScrollView嵌套GridView,ListView 显示和滑动的问题
- Android -关于注册Google Map Api Key 的方法和网页显示不全的问题