Android开发工具类(各种方法调用 )
2016-08-30 15:30
429 查看
ListView中嵌套ListView,动态计算内层ListView的高度。但是子ListView的每个Item必须是LinearLayout,不能是其他的,因为其他的Layout(如RelativeLayout)没有重写onMeasure(),所以会在onMeasure()时抛出异常。
public class Utility {
public static void setListViewHeightBasedOnChildren(ListView listView) {
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);
}
4000
}
public class Utility {
public static void setListViewHeightBasedOnChildren(ListView listView) {
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);
}
4000
}
相关文章推荐
- android 之 Baseactivity 和BaseFragment
- Android Studio 导入项目时的坑你遇见过吗
- android上传图片(及普通参数)到服务器(j2ee后台服务器,ssh框架)
- Android 从本地图库或拍照后裁剪图片并设置头像
- android TabLayout实现京东详情效果
- android TabLayout实现京东详情效果
- android TabLayout实现京东详情效果
- 充电桩智能终端应用软件测评报告发布
- Mac下配置Sdk platform-tools目录的环境变量
- Android系统内置应用更新或升级后被还原的原因
- Android Studio Flavors详解
- Android_ScrollView嵌套ListView会出现的ListView底部会自动出现在屏幕上
- 如何快速自动化打出多个渠道包。(本篇转载)
- AndroidStudio断点调试和高级调试
- 关于android的主题样式要点
- Android自定义控件--评分星级View
- 5.0学习计划--Palette详解
- Android应用程序包扫描过程源码分析
- 【转载】Android提醒微技巧,你真的了解Dialog、Toast和Snackbar吗?
- 关于Android程序退出后内存释放的问题