我有一个包含以下项目的Recyclerview列表:
红色正方形只能我们可以向左滑动(拖放),绿色仅可以向右滑动。滑动元素时,使用如下选项显示和图像:
-swipe left:
布局项目具有以下外观:
<RelativeLayout>
<LinearLayout>
<ImageView/> //Red square
<ImageView/> //Green square
</LinearLayout>
<LinearLayout>
<ImageView/> //Red square swiped action
<ImageView/> //Green square swiped action
</LinearLayout>
</RelativeLayout>
我正在尝试使用ItemTouchHelper.Callback
执行此操作并重写方法onChildDraw
以生成正确的动画。但我不能用方形按住,并制作正确的动画。
¿另一种方法来实现这一目标?
答案 0 :(得分:0)
基于很多示例,通过在RecycleView中创建自己的Callback侦听器很容易。就像在this example中一样。你需要提供自己的行为。
上面链接中的SimpleItemTouchHelperCallback示例。
@Override
public int getMovementFlags(RecyclerView recyclerView, ViewHolder viewHolder) {
int dragFlags = ItemTouchHelper.UP | ItemTouchHelper.DOWN;
int swipeFlags = ItemTouchHelper.START | ItemTouchHelper.END;
//Four your Red field use flags
int redFlags = ItemTouchHelper.START;
//Four your Green field use flags
int greenFlags = ItemTouchHelper.END;
return makeMovementFlags(dragFlags, swipeFlags);
}