网上关于怎样在ScrollView中嵌套ListView的讨论有很多,我大概是搜索了一下,简单总结如下:
1.不要在ScrollView中嵌套ListView
a.用一个LinearLayout来代替ListView。里面的item通过addView添加进去。
b.不用ScrollView,整个界面用一个ListView。ListView上面和下面的内容通过addHeaderView和addFooterView添加到ListView里。
有时候采用这种方式不错的。
2.非要在ScrollView中嵌套一个ListView。
a.继承ListView重写一个类,在ListView的onMeasure方法里自己来计算ListView的高度。
b.在代码中通过ListView的adapter中item的个数计算得出ListView应该的高度,然后通过setLayoutParam来指定ListView的高度。
但是上面所说的两种在ScrollView中嵌套ListView的方法都存在一个通用的bug:
当光标在ListView中移动时ScrollView不能一起滚动
所以,在android的开发中还是要尽最大的努力去避免在ScrollView中嵌套ListView