listView中只显示一行的问题处理
2017-11-20 11:58
302 查看
在做搜索当前wifi,搜索完后,显示在listView中时,出现只显示了第一个,其他的不显示的问题。 布局如下
<ScrollView android:id="@+id/layer1_linear2" android:layout_width="fill_parent" android:layout_height="0dp" android:layout_weight="10"> <LinearLayout android:id="@+id/layer2_linear1" android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <ListView android:id="@+id/listView1" android:layout_width="fill_parent" android:layout_height="fill_parent"> </ListView> </LinearLayout> </ScrollView>`
解决方法:
/** * 为了解决ListView在ScrollView中只能显示一行数据的问题 * * @param listView */ public static void setListViewHeightBasedOnChildren(ListView listView) { // 获取ListView对应的Adapter ListAdapter listAdapter = listView.getAdapter(); if (listAdapter == null) { 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); }
在fragment中或Activity中
BaseAdapter adapter = new SampleCursorAdapter(getActivity(), (SampleCursor)cursor); lv.setAdapter(adapter); Utils.setListViewHeightBasedOnChildren(lv);
参考: http://blog.csdn.net/zhouyingge1104/article/details/43818937
相关文章推荐
- ScrollView和ListView一起使用,解决ListView只显示一行问题!
- RecyclerView, ListView 只显示一行内容 问题解决
- ScrollView嵌套ListView,gridView只显示一行解决方案 (以及计算显示高度错误问题)
- ScrollView中嵌套ListView只显示一行的问题
- listview每一行显示不一样的控件!已更新,原来的有点儿小问题,会在内容中指明!
- 关于ListView在ScrollView中只能显示一行数据的问题
- Android中解决scrollview中嵌套listview的listview只显示一行的问题
- 使用内存表table()和connect by level 处理 一行多条数据显示问题
- ScrollView 嵌套 ListView or ExpandableListView显示问题(一行属性搞定)
- [Android]在ListView嵌套GridView中出现的点击事件处理以及gridview显示不全的有关问题
- 安卓开发——问题:ScrollView中嵌套ListView时,listview只显示一行
- android ListView 和GridView最后一行数据纵向显示不完整的问题解决小技巧
- scrollview嵌套listview 数据显示不全 问题处理方式集合
- ScrollView中嵌套ListView只显示一行问题
- 解决把listview放在ScrollView只显示一行的问题
- ScrollView中嵌套ListView或者GridView时的滑动冲突 || ListView中嵌套GridView,GridView只显示一行的问题解决
- MeasureSpec学习(解决ScrollView中嵌套ListView,ListView只显示一行的问题)
- android listview选中某一行,成选中状态颜色高亮显示,ListView的UI显示中常见问题及解决办法
- ListView列表只显示一行的问题
- 在ListView嵌套GridView中出现的点击事件冲突的处理以及gridview显示不全的问题