我想在每个滚动更改事件中从android scrollview获取第一个可见的子视图。 就像,当我们向下滚动时,我们将获得所有即将在屏幕上显示的视图ID或引用。怎么样?
答案 0 :(得分:2)
我自己得到了..这是我的代码:
在这里,我们需要创建自定义回调侦听器。在它的onScrollChanged()中,我们得到int t
,它是滚动的Y位置。额外的,我们需要子行高,然后将t
除以rowHeight
。完成。我们可以进一步使用getChildAt()
。
scrollView.setOnScrollViewListener(new OnScrollViewListener() {
@Override
public void onScrollChanged(ScrollViewEx v, int l, int t, int oldl,int oldt) {
int rowHeight = rowView.getHeight();
int firstPos = t / rowHeight;
scrollMainChildLL = (LinearLayout) v.getChildAt(0);
gotTxtLL = (LinearLayout) scrollMainChildLL.getChildAt(firstPos);
}
}