RecyclerView ScrollY 始终为 0

Ugu*_*gur 5 android xamarin.android android-recyclerview recyclerview-layout

我在片段中有一个 RecyclerView 。我需要收到滚动更改的通知,因此我添加了一个ScrollChange事件回调(对应于SetOnScrollChangeListener经典的 Android API):

private void RecyclerViewScrollChange(object sender, View.ScrollChangeEventArgs e)
{
    int deltaY = e.ScrollY - e.OldScrollY;
}
Run Code Online (Sandbox Code Playgroud)

问题在于 deltaY 始终为零,因为 ScrollY 和 OldScrollY 始终为零。我在回收器视图的布局管理器中使用垂直线性布局,因此应该更新垂直尺寸。什么会导致这个问题?

Nik*_*Nik -1

滚动到 Y 位置正在使用

recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
            @Override
            public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
                super.onScrollStateChanged(recyclerView, newState);
            }

            @Override
            public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
                super.onScrolled(recyclerView, dx, dy);
                Log.v("onScrolled", "dx:" + dx + " dy:" + dy);

             }
        });
Run Code Online (Sandbox Code Playgroud)

  • 问题是问“scrollY”,这个答案回答“dy”?为什么这是公认的答案? (8认同)