2

我有一个ViewPager作为我的RecyclerView中的一个项目。 Viewpager水平滚动工作正常,但是当我试图通过选择RecyclerView项目时,选择我的ViewPager垂直滚动我的RecyclerView;我的RecyclerView不滚动。对于RecyclerviewViewpager里面Recyclerview作为项目使用Viewpager阻止Recyclerview滚动

mRecyclerViewCarouselInfo.setLayoutManager(new LinearLayoutManager(getContext(),LinearLayoutManager.VERTICAL,false)); 
mRecyclerViewCarouselInfo.addOnItemTouchListener(new RecyclerView.OnItemTouchListener() { 
     @Override 
     public boolean onInterceptTouchEvent(RecyclerView rv, MotionEvent e) { 
      int action = e.getAction(); 
      switch (action) { 
       case MotionEvent.ACTION_MOVE: 
        rv.getParent().requestDisallowInterceptTouchEvent(true); 
        break; 
      } 
      return false; 
     } 

     @Override 
     public void onTouchEvent(RecyclerView rv, MotionEvent event) { 

     } 

     @Override 
     public void onRequestDisallowInterceptTouchEvent(boolean disallowIntercept) { 

     } 
    }); 

我的布局代码如下

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="@color/black" 
    android:orientation="vertical" 
    android:paddingBottom="@dimen/margin_gap_8"> 
<android.support.v7.widget.RecyclerView 
    android:id="@+id/recyclerview" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:listSelector="@drawable/listitem_selector_bg" 
    android:visibility="visible"/> 
</RelativeLayout> 

回答

1

尝试

mRecyclerViewCarouselInfo.setNestedScrollingEnabled(true); 
+0

它不是为我工作。 – Dhalloo

+0

感谢您使用此代码段,这可能会提供一些有限的即时帮助。通过展示*为什么*这是一个很好的解决方案,并且使它对未来的读者更有用,一个正确的解释[将大大提高](// meta.stackexchange.com/q/114762)其长期价值其他类似的问题。请[编辑]你的答案以添加一些解释,包括你所做的假设。 –

相关问题