6 android android-5.0-lollipop android-recyclerview
我已经在这篇文章的帮助下以某种方式实现了回收视图,现在我的要求是在此回收视图中从运行时删除一行.
链接 - http://treyrobinson.net/blog/android-l-tutorials-part-3-recyclerview-and-cardview/
请帮我.
谢谢.
Ped*_*ira 12
由于我们不知道您的adaper如何以及在该链接中给出信息,您可以在适配器中创建一个删除对象的方法:
public void removeItem(int position) {
mData.remove(position);
notifyItemRemoved(position);
}
Run Code Online (Sandbox Code Playgroud)
您可以通过以下活动完成所有这些操作:
((MyRecyclerAdapter)myRecyclerView.getAdapter()).removeItem(position);
Run Code Online (Sandbox Code Playgroud)
我能够让它像这样工作。
ItemTouchHelper.SimpleCallback simpleItemTouchCallback = new ItemTouchHelper.SimpleCallback(0, ItemTouchHelper.LEFT | ItemTouchHelper.RIGHT) {
@Override
public void onSwiped(RecyclerView.ViewHolder viewHolder, int swipeDir) {
//Remove swiped item from list and notify the RecyclerView
datalist.remove(viewHolder.getAdapterPosition());
// this line animates what happens after delete
adapter.notifyItemRemoved(viewHolder.getAdapterPosition());
Snackbar.make(recyclerView, "delete successful", Snackbar.LENGTH_LONG).show();
}
@Override
public boolean onMove(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, RecyclerView.ViewHolder target) {
return false;
}
};
Run Code Online (Sandbox Code Playgroud)
并将上述内容设置为这样的回收站视图。
ItemTouchHelper itemTouchHelper = new ItemTouchHelper(simpleItemTouchCallback);
itemTouchHelper.attachToRecyclerView(recyclerView);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
19003 次 |
| 最近记录: |