👁 521
RecyclerView — это новый тип View, появившийся в Android L. Вкратце, фича этой вьюшки, в отличие от ListView, в том, что мы используем для отображения только то количество View-шек, которое нам необходимо, и потом переиспользуем при скроллинге, а не забиваем адаптером весь список.
http://developer.android.com/intl/ru/reference/android/support/v7/widget/RecyclerView.html
Бывает такая ситуация, при которой нам нужно отключить скроллинг в RecyclerView, но, в отличие от того же ListView, сделать это труднее.
Самым простым способом будет просто переопределить dispatchTouchEvent и ловить MotionEvent.ACTION_MOVE.
public class NoScrollRecyclerView extends RecyclerView { public NoScrollRecyclerView(Context context){ super(context); } public NoScrollRecyclerView(Context context, AttributeSet attrs){ super(context, attrs); } public NoScrollRecyclerView(Context context, AttributeSet attrs, int style){ super(context, attrs, style); } @Override public boolean dispatchTouchEvent(MotionEvent ev){ if(ev.getAction() == MotionEvent.ACTION_MOVE) return true; return super.dispatchTouchEvent(ev); } }