他们是否直接支持在RecyclerView项目上删除/存档幻灯片(从右到左或从左到右)。
而不是删除/存档我想要列表项下的四个按钮。
像这样https://github.com/47deg/android-swipelistview但是对于recyclerview和官方支持而不是任何第三方lib
答案 0 :(得分:8)
是的,你可以使用支持库提供的ItemTouchHelper类来完成它。
P.S。 前几天我不得不这样做,并且如果可能的话也想避免使用第三方库。该库可能比您需要的更多,因此可能比您的情况更复杂。它也可以不必增加您的方法计数。这只是为什么你应该避免添加lib作为你的问题的快速修复的原因的一个例子。
编辑:我对此有所了解,请参阅此blog post和此github repo。
答案 1 :(得分:4)
是的。使用ItemTouchHelper。尝试克隆this project并查看其使用方式。
具体file,见第87行
对于不想点击链接的懒人,这就是你设置的方式:
ItemTouchHelper.SimpleCallback simpleCallback =
new ItemTouchHelper.SimpleCallback(0, ItemTouchHelper.RIGHT) {
@Override
public boolean onMove(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder,
RecyclerView.ViewHolder target) {
return false;
}
@Override
public void onSwiped(RecyclerView.ViewHolder viewHolder, int direction) {
//do things
}
};
ItemTouchHelper itemTouchHelper = new ItemTouchHelper(simpleCallback);
itemTouchHelper.attachToRecyclerView(recyclerView);
recyclerView
是保存回收者视图的变量。
除了ItemTouchHelper.RIGHT之外还有其他方向,尝试进行实验。