gpt4 book ai didi

android - 如何防止在 Android 中的 RecyclerView 上向左或向右滑动

转载 作者:行者123 更新时间:2023-11-29 15:40:21 26 4
gpt4 key购买 nike

我创建了一个简单的 RecyclerView,我正在使用下面的 Swipe Listener:

//swipe items
new ItemTouchHelper(new ItemTouchHelper.SimpleCallback(0, ItemTouchHelper.LEFT | ItemTouchHelper.RIGHT) {

@Override
public boolean onMove(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, RecyclerView.ViewHolder target) {
//do nothing, we only care about swiping
return false;
}

@Override
public void onSwiped(RecyclerView.ViewHolder viewHolder, int swipeDir) {
if(swipeDir == ItemTouchHelper.RIGHT){
Toast.makeText(getContext(), "Swiped right", Toast.LENGTH_SHORT).show();
}else{
Toast.makeText(getContext(), "Swiped left", Toast.LENGTH_SHORT).show();
}

}
}).attachToRecyclerView(recyclerView);

我只想允许向右滑动并防止向左滑动。因此,当用户尝试向左滑动时,我希望该项目不会消失。

我该怎么做?

最佳答案

如果您只想启用一些滑动/拖动 Action ,您需要覆盖ItemTouchHelper.Callback的方法@Override public int getMovementFlags(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder) code>(ItemTouchHelper.SimpleCallback 的父类(super class))

例如,如果您只想启用右滑:

@Override public int getMovementFlags(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder) {
int dragFlags = 0;
int swipeFlags = ItemTouchHelper.RIGHT;

return makeMovementFlags(dragFlags, swipeFlags);
}

关于android - 如何防止在 Android 中的 RecyclerView 上向左或向右滑动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41486122/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com