2017-02-22 6 views
3

enter image description here 조각 클래스 중 하나에 recyclerview가 있습니다 (FragmentViewPagerAdapter). 여기에 Recyclerview에서 나는 일어나지 않는 스 와이프에 대해 ItemTouchHelper을 구현합니다. 누구든지이 문제를 겪었습니까?RecyclerView ItemTouch 도움말 스 와이프 조치가 조각 클래스에서 작동하지 않습니다.

viewpageradapter 스 와이프 조치로 인해 itemtouchhelper 스 와이프 기능을 사용할 수 없습니다.

public SwipeHelper(ListAdapter adapter, Context context) { 
    super(0, ItemTouchHelper.RIGHT); 
    this.adapter = adapter; 
    this.context = context; 
} 

public SwipeHelper(int dragDirs, int swipeDirs) { 
    super(dragDirs, swipeDirs); 
} 

@Override 
public boolean onMove(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, RecyclerView.ViewHolder target) { 

    return false; 
} 

@Override 
public void onSwiped(RecyclerView.ViewHolder viewHolder, int direction) { 
    Toast.makeText(context, "swipe", Toast.LENGTH_LONG).show(); 
} 
    ItemTouchHelper.Callback callback = new SwipeHelper(adapter,getActivity()); 
    ItemTouchHelper helper = new ItemTouchHelper(callback); 
    helper.attachToRecyclerView(leadRV); 
+0

코드를 공유해주십시오. – aleksandrbel

+1

'ViewPager'는 수평 스 와이프를 소비하고 있습니다. 스 와이프가'RecyclerView' 아이템에 영향을 미치는지 여부를 구별하는 방법이나'ViewPager'를 움직이는 것은 어떻게 의미합니까? –

+0

코드는 어디에 있습니까? 지금까지 해봤습니까? – Piyush

답변

0

물론 아이템 터치 도우미를 쉽게 구현할 수 있지만 마음 속에 몇 가지 포인트를 유지해야합니다. 아이템 터치 리스너를 구현하기 위해 reinterview가있는 첨부 리스너를 사용하는 경우 바인드 뷰 홀더에 Item Touch Helper를 구현하지 마십시오. 이미 바인드 뷰 홀더 또는 뷰 홀더에서 터치를 선언 한 경우에는 내부에서 구현하지 마십시오. 첨부 리스너에. 시도해보십시오. 여전히 오류가 발생하고 여기에서 코드를 업데이트하십시오.

+0

코드를 추가 했으므로 어디에서 코드를 변경해야하는지 제안 할 수 있습니다. – user2273146