ScrollView和Listview嵌套冲突问题解决
来源:互联网 发布:高级java工程师强化班 编辑:程序博客网 时间:2024/04/28 19:47
ScrollView和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); } 上面这个方法就是设定ListView的高度了,在为ListView设置了Adapter之后使用,就可以解决问题了。但是这个方法有个两个细节需要注意: (1)是Adapter中getView方法返回的View的必须由LinearLayout组成,因为只有LinearLayout才有measure()方法,如果使用其他的布局如RelativeLayout,在调用listItem.measure(0, 0);时就会抛异常,因为除LinearLayout外的其他布局的这个方法就是直接抛异常的,没理由…。我最初使用的就是这个方法,但是因为子控件的顶层布局是RelativeLayout,所以一直报错,不得不放弃这个方法。 (2)是需要手动把ScrollView滚动至最顶端,因为使用这个方法的话,默认在ScrollView顶端的项是ListView,具体原因不了解,求大神解答…可以在Activity中设置: sv = (ScrollView) findViewById(R.id.act_solution_1_sv);
0 0
- ScrollView和Listview嵌套冲突问题解决
- ScrollView嵌套ListView的冲突问题解决
- ScrollView嵌套ListView冲突问题解决方案
- ScrollView和ListView冲突问题解决
- ListView和ScrollView冲突问题解决
- ScrollView嵌套ListView冲突
- Listview和scrollview嵌套冲突问题
- 解决ScrollView嵌套ListView和GridView冲突
- ScrollView+ListView冲突问题解决
- ScrollView 嵌套listview 问题解决
- ScrollView中嵌套ListView滚动效果冲突问题解决
- Android ScrollView中嵌套ListView滚动效果冲突问题解决
- ScrollView中嵌套ListView滚动效果冲突问题解决
- ScrollView和ListView或ListView和ListView嵌套引起问题解决
- ScrollView嵌套滑动冲突问题解决
- ScrollView嵌套ListView冲突问题
- Scrollview嵌套ListView冲突问题
- 关于ScrollView嵌套ListView冲突
- 在构建新项目时可能会出现的问题
- QVariant自定义类型例子及机制分析
- BIOS基本输入输出系统
- 五十道编程小题目 --- 11 排列与组合(阶乘) java
- 为什么NSString要用Copy来修饰?
- ScrollView和Listview嵌套冲突问题解决
- 欢迎使用CSDN-markdown编辑器
- Parajumpers Jakke Norge of you ah!You don't
- android 中的一些资源注解,让编译器帮你检查代码
- srs代码学习(1)--listen建立过程
- SDWebImage 加载图片原理
- 3340数据结构实验之二叉树一:树的同构
- android 读取手机通讯录
- Qt: QObject::connect: Cannot queue arguments of type 'XXX'