/** * <p>Attaches {@link androidx.recyclerview.widget.RecyclerView} instance.</p> * <p>Before calling this method, the target {@link androidx.recyclerview.widget.RecyclerView} must set * the wrapped adapter instance which is returned by the * {@link #createWrappedAdapter(androidx.recyclerview.widget.RecyclerView.Adapter)} method.</p> * * @param rv The {@link androidx.recyclerview.widget.RecyclerView} instance */ public void attachRecyclerView(@NonNull RecyclerView rv) { if (isReleased()) { throw new IllegalStateException("Accessing released object"); } if (mRecyclerView != null) { throw new IllegalStateException("RecyclerView instance has already been set"); } mRecyclerView = rv; mRecyclerView.addOnItemTouchListener(mInternalUseOnItemTouchListener); mTouchSlop = ViewConfiguration.get(mRecyclerView.getContext()).getScaledTouchSlop(); }