如何在RecyclerView.Adapter中获取View for Snackbar?

Mmo*_*its 15 android android-recyclerview

我正在通过本文的帮助实现Swipe和Drag in .在删除项目时,我想显示但显示 需要查看.我不知道如何进入一个功能.RecyclerViewSnackBarSnackBarViewRecyclerAdapter

我的代码:

public void onItemDismiss(int position) {
        notes.remove(position);
        notifyItemRemoved(position);
        /* Show SnackBar */
    }
Run Code Online (Sandbox Code Playgroud)

编辑:我的问题与这个问题不同.我在实现SwipetoDismiss方面没有任何问题.我已经成功实现了它.但我想显示一个SnackBar,以便用户可以进行修改和撤消.我在显示SnackBar时没有实现onSwiped()的问题.

N J*_*N J 8

修改您的方法并RecyclerView作为参数传递,以便您获得视图

public void onItemDismiss(int position,RecyclerView rv) {
        notes.remove(position);
        notifyItemRemoved(position);
        /* Show SnackBar */
        Snackbar.make(rv, R.string.snackbar_text, Snackbar.LENGTH_LONG).show(); 
    }
Run Code Online (Sandbox Code Playgroud)

编辑

private final ItemTouchHelperAdapter mAdapter;
private final RecyclerView rv;
public SimpleItemTouchHelperCallback(ItemTouchHelperAdapter adapter,RecyclerView rv) {
    mAdapter = adapter;
    this.rv=rv;
}
Run Code Online (Sandbox Code Playgroud)

然后通过

 @Override
    public void onSwiped(ViewHolder viewHolder, int direction) {
        mAdapter.onItemDismiss(viewHolder.getAdapterPosition(),rv);
    }
Run Code Online (Sandbox Code Playgroud)