1、手动设置 ListView 高度
经过测试发现,在 xml 中直接指定 ListView 的高度,是可以解决这个问题的,但是 ListView
中的数据是可变的,实际高度还需要实际测量。
于是手动代码设置 ListView 高度的方法就诞生了。
/**
* 动态设置 ListView 的高度

/**
* 动态设置 ListView 的高度
* @param listView
*/
public static void setListViewHeightBasedOnChildren(ListView listView) {
if(listView == null)
return;
ListAdapter listAdapter = listView.getAdapter();
if (listAdapter == null) {
// pre-condition
return;
}
int totalHeight = 0;
for (int i = 0; i < listAdapter.getCount(); i++) {
View listItem = listAdapter.getView(i, null, listView);
listItem.measure(0, 0);
totalHeight += listItem.getMeasuredHeight();
}
ViewGroup.LayoutParams params = listView.getLayoutParams();
params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() -1));
listView.setLayoutParams(params);
}

最新文章

  1. C++11中自定义range
  2. Excel 实用技巧之一
  3. 【Android测试】UI自动化代码优化之路(临时发布, 随时删除)
  4. Magicodes.WeiChat——多租户的设计与实现
  5. 如何用JS获取ASP.net中的textbox的值 js获不到text值
  6. openerp - asterisk connector(转载)
  7. c#中cookies的存取操作
  8. JavaScript高级程序设计16.pdf
  9. Toast——提醒方式
  10. PHP实现好友生日邮件提醒
  11. 【每天一道算法题】Numeric Keypad
  12. Oracle学习笔记之存储过程
  13. Node.js_express_中间件 middleware_登录/注册实例源代码
  14. MQTT 学习记录
  15. 【WebForm】知识笔记
  16. 云-AWS-清单:清单列表
  17. [leetcode]346. Moving Average from Data Stream滑动窗口平均值
  18. C#回调实现的一般过程
  19. TThread 线程的例子
  20. kvm详细介绍

热门文章

  1. Apache(web服务器)与Tomcat(应用服务器)搭建集群
  2. .net Core的例子
  3. java8学习之Stream陷阱剖析
  4. 第三次java测验1
  5. java 学习笔记(五) Zookeeper的集群配置和Java测试程序
  6. DevExpress实现为TextEdit设置水印文字的方法
  7. Junit 4测试框架使用
  8. SQL Server里Grouping Sets的威力【转】
  9. js 动态加载js 并执行
  10. OpenCV笔记(4)(直方图、傅里叶变换、高低通滤波)