获取 RecyclerView 或 Webview 的滚动 Y

get scroll Y of RecyclerView or Webview

我创建了一个 activity Webview 内容放在 Recyclerview 中。 我想在滚动 webview 时获得滚动 Y 位置。 我尝试了 Webview.getScrollY()Webview.getY()RecyclerView.getScrollY()RecyclerView.getY()、...但效果不佳。我无法获得当前卷轴 Y。 有没有关于获取 WebviewRecyclerView 的滚动 Y 的建议?

为网络视图使用 RecyclerView.OnScrollListener for the RecyclerView and a View.OnScrollChangeListener

您必须自己跟踪总滚动量,如下所示:

private int mTotalScrolled = 0;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    ...

    recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
            @Override
            public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
                super.onScrolled(recyclerView, dx, dy);

                mTotalScrolled += dy;

            }
        });

    ...

}

private int getScrollForRecycler(){
    return mTotalScrolled;
}
正如@Pkmmte 提到的,

computeVerticalScrollOffset()在这种情况下更方便。

mTotalScrolled  = recyclerView.computeVerticalScrollOffset();