从RecyclerView分离ItemTouchHelper

我有一个工作ItemTouchHelper RecyclerView。 一切都很好,但我想知道是否有一种方法,我可以从RecyclerView分离ItemTouchHelper而不重新创build列表? 为了好玩,这是我用来附加的代码:

ItemTouchHelper.Callback callback = new ItemTouchHelper.SimpleCallback(0, ItemTouchHelper.LEFT | ItemTouchHelper.RIGHT) { ... }; mItemTouchHelper = new ItemTouchHelper(callback); mItemTouchHelper.attachToRecyclerView(mPasswordList); 

理想情况下,我想检查在这个RecyclerView居住的活动onResume()的偏好,并根据它分离ItemTouchHelper。

Solutions Collecting From Web of "从RecyclerView分离ItemTouchHelper"

我原来的动机是允许用户在列表项上禁用滑动操作。 我认为这样做是从RecyclerView分离ItemTouchHelper 。 我现在发现ItemTouchHelper.SimpleCallback有以下方法可用来覆盖:

 @Override public boolean isItemViewSwipeEnabled() { return mSwipable; } 

所以,在这里返回正确的状态有效地closures了刷卡处理。 我希望这将有助于未来的人。

您可以通过将recyclerview设置为null来从RecyclerView分离ItemTouchHelper:

 mItemTouchHelper.attachToRecyclerView(null);