1

我已经在CoordinatorLayout中使用水平RecyclerView的视图,使得RecyclerView的父项为appbar_scrolling_view_behavior。除非我们尝试垂直滚动recyclerView,否则一切都很完美。我们可以在Y轴上滚动并在X轴上水平滚动时垂直滚动。CoordinatorLayout中的水平RecyclerView?

EDIT

有两种RecyclerView在片段,其最终在CoordinatorLayout使用。现在第一个recyclerView是水平的,第二个是垂直的。当我第一个水平滚动RecyclerView它完美的作品,当我垂直滚动第二个RecyclerView它完美的作品。现在的问题是,当我尝试垂直滚动第一个RecyclerView父滚动应该工作。 谢谢。

+0

我不明白你想要什么。根据你对@ Harshad的回答的评论,你希望recyclerview可以垂直滚动,而recyclerview的行是可水平滚动的,那是对的吗? – hehe

+0

请通过编辑.. – Navdroid

回答

0

是的,这很容易做到,检查每个人RecycleView的滚动状态。 因此,举个例子,你有一个片段 - 5个不同的方向RecycleViews。而且你想滚动一切,当从他们滚动一个。

1)在每个RecycleView上设置onScrollChangeListener。

mRecyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() 
{ 
    @Override 
    public void onScrolled(RecyclerView recyclerView, int dx, int dy) 
    { 
     mRecycle1.smoothScrollBy(dx, dy); // Or use any other behaviour 
     mRecycle2.smoothScrollBy(dx, dy); 
     mRecycle3.smoothScrollBy(dx, dy); 
     ...... 
    } 
} 

编辑:

这是工作正常的任何轴(X和Y)。还请检查有关RecycleView滚动状态的this link

+0

不工作在我的情况..onScrolled只有在x轴滚动时才被调用...不适用于水平RecyclerView中的y。 – Navdroid