[置顶] ScrollView和Listview嵌套冲突问题解决
2016-08-25 14:26
411 查看
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);
相关文章推荐
- ScrollView中嵌套ListView和GridView冲突问题的解决
- ScrollView嵌套ListView——解决滑动冲突问题
- ScrollView中嵌套ListView或者GridView时的滑动冲突 || ListView中嵌套GridView,GridView只显示一行的问题解决
- tip3——解决ScrollView嵌套ListView后,ListView的item置顶页面的问题
- 解决ScrollView下嵌套ListView、GridView显示不全的问题(冲突)
- ScrollView嵌套ListView的冲突问题解决
- 【Android界面实现】解决ScrollView中嵌套Listview,Listview中嵌套Listview显示不完整和滑动冲突的问题
- 解决ScrollView中嵌套Listview,Listview中嵌套Listview显示不完整和滑动冲突的问题
- Android ScrollView中嵌套ListView,滑动冲突问题的解决
- Android ScrollView中嵌套ListView滚动效果冲突问题解决
- 解决scrollView嵌套listview的冲突问题
- 四种方法解决ScrollView嵌套listview的滑动冲突问题
- 解决scrollview 嵌套gridview或者listview 冲突的问题
- 【Android界面实现】解决ScrollView中嵌套Listview,Listview中嵌套Listview显示不完整和滑动冲突的问题
- 解决 ScrollView 嵌套 ListView 时,高度不正常和滑动冲突的问题
- 【Android界面实现】解决ScrollView中嵌套Listview,Listview中嵌套Listview显示不完整和滑动冲突的问题
- 解决ScrollView中嵌套ListView滚动效果冲突问题 & ListVIew点击事件失效
- 【Android界面实现】解决ScrollView中嵌套Listview,Listview中嵌套Listview显示不完整和滑动冲突的问题
- 【Android界面实现】解决ScrollView中嵌套Listview,Listview中嵌套Listview显示不完整和滑动冲突的问题
- 解决ScrollView下嵌套ListView、GridView显示不全的问题(冲突)