重新填充左右滑动手势的回收视图数据
Repopulate recycleview data on left-right swipe gesture
我正在设计一个布局,其中我有 3 个 RecycleView
,如图所示,最左边的 'purple' RecycleView
是固定的。接下来的两个 RecycleView
s 数据在滑动时发生变化。有点像 table,我只是用新的 List
数据重新填充这些 RecycleViews
。现在通常在 RecycleView
中对一个项目使用滑动,这里我想为整个列表添加滑动手势。
这就是我所做的,但是滑动仅针对一个元素,并且由于某些原因它没有填充 RecycleView
。然而,同样的方法适用于单击下一步按钮。我知道这可以使用 ViewPager
来完成,但我仍在寻找 RecycleView
是否有一些刷卡方法可以让我重新填充整个 RecycleView
而不是在单个项目数据上刷卡。
ItemTouchHelper.SimpleCallback simpleItemTouchCallback = new ItemTouchHelper.SimpleCallback(0, ItemTouchHelper.LEFT | ItemTouchHelper.RIGHT | ItemTouchHelper.DOWN | ItemTouchHelper.UP) {
@Override
public boolean onMove(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, RecyclerView.ViewHolder target) {
Toast.makeText(getApplicationContext(), "on Move", Toast.LENGTH_SHORT).show();
return false;
}
@Override
public void onSwiped(RecyclerView.ViewHolder viewHolder, int swipeDir) {
Toast.makeText(getApplicationContext(), "on Swiped ", Toast.LENGTH_SHORT).show();
//Remove swiped item from list and notify the RecyclerView
adapterOdds1.updateListOdds(allBestSiteGamesList.get(oddsListDipslay), oddsListDipslay);
}
};
ItemTouchHelper
在这种情况下无济于事,因为我想对整个列表使用滑动,所以我发现以下解决方案有助于实现我想要的所需功能,而无需使用 viewpager
.
他的解决方案帮助解决了我的问题。
我正在设计一个布局,其中我有 3 个 RecycleView
,如图所示,最左边的 'purple' RecycleView
是固定的。接下来的两个 RecycleView
s 数据在滑动时发生变化。有点像 table,我只是用新的 List
数据重新填充这些 RecycleViews
。现在通常在 RecycleView
中对一个项目使用滑动,这里我想为整个列表添加滑动手势。
这就是我所做的,但是滑动仅针对一个元素,并且由于某些原因它没有填充 RecycleView
。然而,同样的方法适用于单击下一步按钮。我知道这可以使用 ViewPager
来完成,但我仍在寻找 RecycleView
是否有一些刷卡方法可以让我重新填充整个 RecycleView
而不是在单个项目数据上刷卡。
ItemTouchHelper.SimpleCallback simpleItemTouchCallback = new ItemTouchHelper.SimpleCallback(0, ItemTouchHelper.LEFT | ItemTouchHelper.RIGHT | ItemTouchHelper.DOWN | ItemTouchHelper.UP) {
@Override
public boolean onMove(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, RecyclerView.ViewHolder target) {
Toast.makeText(getApplicationContext(), "on Move", Toast.LENGTH_SHORT).show();
return false;
}
@Override
public void onSwiped(RecyclerView.ViewHolder viewHolder, int swipeDir) {
Toast.makeText(getApplicationContext(), "on Swiped ", Toast.LENGTH_SHORT).show();
//Remove swiped item from list and notify the RecyclerView
adapterOdds1.updateListOdds(allBestSiteGamesList.get(oddsListDipslay), oddsListDipslay);
}
};
ItemTouchHelper
在这种情况下无济于事,因为我想对整个列表使用滑动,所以我发现以下解决方案有助于实现我想要的所需功能,而无需使用 viewpager
.
他的解决方案帮助解决了我的问题。