如何在scrollChange事件上获取android scrollview的First Visible子项

时间:2014-07-03 10:12:15

标签: android scrollview

我想在每个滚动更改事件中从android scrollview获取第一个可见的子视图。 就像,当我们向下滚动时,我们将获得所有即将在屏幕上显示的视图ID或引用。怎么样?

1 个答案:

答案 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);
    }
 }