项目中scrollview嵌套listview后,各种问题,首先是listview的高度计算问题;后面有liistview的setSelection失效问题 。
前一种网上有多种解决办法,就不在这里描述了。 主要是后一种,可能初学者会不知道怎么处理,我今天大概描述一下我的处理方式(可能还有更好
的处理方式,期待大牛的解决方案)
首先listview的setSelection的暂时用不了了,只能想其他方法。
scrollview嵌套listview后,scrollview处理滚动事件,这时候可以计算listview中的要滚动的目的item 到scrollview头的Y轴距离,然后使用
scollview.scrollTo方法(0,Y)得到应有的效果。
item的具体计算方式可以参考view.getTop(),view.getBottom(),计算相对于父类的像素距离。如果层级较多,需要计算view.getParent.相对他父类的
父类的像素高度(这个也可以直接通过findview找到,更快捷)。一直到最终的scrollview的像素高度就能拿到Y轴距离了。
前一种网上有多种解决办法,就不在这里描述了。 主要是后一种,可能初学者会不知道怎么处理,我今天大概描述一下我的处理方式(可能还有更好
的处理方式,期待大牛的解决方案)
首先listview的setSelection的暂时用不了了,只能想其他方法。
scrollview嵌套listview后,scrollview处理滚动事件,这时候可以计算listview中的要滚动的目的item 到scrollview头的Y轴距离,然后使用
scollview.scrollTo方法(0,Y)得到应有的效果。
item的具体计算方式可以参考view.getTop(),view.getBottom(),计算相对于父类的像素距离。如果层级较多,需要计算view.getParent.相对他父类的
父类的像素高度(这个也可以直接通过findview找到,更快捷)。一直到最终的scrollview的像素高度就能拿到Y轴距离了。