对于我的recyclerview,我附上了ItemTouchHelper。用户可以向两个方向滑动,即左右。
我想知道,一旦用户开始向左或向右拖动单元格而不是在用户刷过recyclerview的单元格后,就可以知道。基于此,我需要对细胞采取一些行动。
我正在使用ItemTouchHelper的以下方法
- run: sudo apt-get install libappindicator3-1
- run: curl -L -o google-chrome.deb https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
- run: sudo sed -i 's|HERE/chrome\"|HERE/chrome\" --disable-setuid-sandbox|g' /opt/google/chrome/google-chrome
- run: sudo dpkg -i google-chrome.deb
- run: rm google-chrome.deb
但我不知道如何使用它,因为文档不合适。
答案 0 :(得分:1)
一旦选择了正在滑动的视图并开始向右或向左移动,您就可以在onChildDraw()
的{{1}}中检查滑动的方向:
ItemTouchHelper.Callback
答案 1 :(得分:1)
new ItemTouchHelper( new ItemTouchHelper.SimpleCallback( 0,
ItemTouchHelper.LEFT | 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) {
int adapterPosition = viewHolder.getAdapterPosition();
if (direction == ItemTouchHelper.RIGHT) {
Toast.makeText( getContext(), "Right", Toast.LENGTH_SHORT ).show();
} else if (direction == ItemTouchHelper.LEFT) {
Toast.makeText( getContext(), "Left", Toast.LENGTH_SHORT ).show();
}
}
} ).attachToRecyclerView( myProductFgRecyclerV );