回收者向左滑动和向右滑动执行不同的操作

see*_*ess 8 android swipe android-recyclerview

我有以下回收器视图代码,它允许用户向右滑动(从视图中删除卡并从 SQLite db 中删除数据)并允许用户移动标签以重新排列。有用。我很高兴。

ItemTouchHelper.SimpleCallback simpleItemTouchCallback = new ItemTouchHelper.SimpleCallback(ItemTouchHelper.UP | ItemTouchHelper.DOWN,  ItemTouchHelper.RIGHT) {
        @Override
        public boolean onMove(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, RecyclerView.ViewHolder target) {
            //awesome code when user grabs recycler card to reorder   
        } 

        @Override
        public void clearView(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder) {
            super.clearView(recyclerView, viewHolder);
            //awesome code to run when user drops card and completes reorder
        }

        @Override
        public void onSwiped(RecyclerView.ViewHolder viewHolder, int direction) {
            //awesome code when swiping right to remove recycler card and delete SQLite data
        }
    };
    ItemTouchHelper itemTouchHelper = new ItemTouchHelper(simpleItemTouchCallback);
    itemTouchHelper.attachToRecyclerView(recyclerView);
Run Code Online (Sandbox Code Playgroud)

现在,我想添加向左滑动并执行与向右滑动不同的功能。到目前为止,我找到的所有解决方案都需要重写我的代码。有什么建议可以将 SWIPE LEFT 添加到我现有的代码中吗?

小智 7

onSwiped方法上,添加-

if (direction == ItemTouchHelper.RIGHT) {
//whatever code you want the swipe to perform
}
Run Code Online (Sandbox Code Playgroud)

然后另一个用于向左滑动-

if (direction == ItemTouchHelper.LEFT) {
//whatever code you want the swipe to perform
}
Run Code Online (Sandbox Code Playgroud)