在滚动时检查recyclerview项目位置是否已更改

时间:2018-06-14 07:04:57

标签: android android-recyclerview

您好我正在尝试检查回收者查看当前位置是否已更改。并在滚动时获得该位置。尝试将其放入onbind但它只被调用一次。 搜索了答案并找到了this。但是寻找一些解决方法来实现它。让我知道

@Override
public void onBindViewHolder(final MyViewHolder holder, final int position) {


    final News news = episodeList.get(position);
    Log.e(TAG, "onBindViewHolder: " + holder.getAdapterPosition() );
}

在这里,所有位置都记录在一起。

1 个答案:

答案 0 :(得分:0)

  

试试这个:

     

只使用您自己的布局管理器,因为我的回收站视图水平滚动

将您的X-Position保存为类变量并更新onScrollListener中的每个更改。确保您没有重置overallXScroll(f.e. onScreenRotationChange)

private int overallXScroll = 0;
 //...
 mRecyclerView.setOnScrollListener(new RecyclerView.OnScrollListener() {
    @Override
    public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
        super.onScrolled(recyclerView, dx, dy);

        overallXScroll = overallXScroll + dx;
        Log.i("check","overall X  = " + overallXScroll);

    }
 });