android - 在 RecycleView 中滑动删除不起作用
问题描述
我从回收列表中删除的滑动实现不起作用,该项目被滑动,但它在被滑动后立即返回。此代码旨在创建语音到文本的购物清单以帮助老年人。
(我是 Android 开发的新手,感谢所有反馈,谢谢!)
public class GroceryListActivity extends AppCompatActivity {
RecyclerView recyclerView;
RecycleAdapter recycleAdapter;
RelativeLayout relativeLayout;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_grocery_list);
relativeLayout = findViewById(R.id.relativeLayoutRL);
recyclerView = findViewById(R.id.rvList);
recyclerView.setLayoutManager(new LinearLayoutManager(this));
recycleAdapter = new RecycleAdapter(this, prepareTextForRecycleView());
recyclerView.setAdapter(recycleAdapter);
//FOR SWIPE REMOVE ON ELEMENT ON LIST
ItemTouchHelper helper = new ItemTouchHelper(callback);
helper.attachToRecyclerView(recyclerView);
}
//FOR SWIPE REMOVE ON ELEMENT ON LIST
ItemTouchHelper.SimpleCallback callback = new ItemTouchHelper.SimpleCallback(0, ItemTouchHelper.LEFT | ItemTouchHelper.RIGHT) {
@Override
public boolean onMove(@NonNull RecyclerView recyclerView, @NonNull RecyclerView.ViewHolder viewHolder, @NonNull RecyclerView.ViewHolder target) {
return false;
}
@Override
public void onSwiped(@NonNull RecyclerView.ViewHolder viewHolder, int direction) {
Snackbar snackbar = Snackbar.make(relativeLayout, "Item removido", Snackbar.LENGTH_LONG);
snackbar.show();
MainActivity.speechAsText.remove(viewHolder.getAdapterPosition());
recycleAdapter.notifyDataSetChanged();
}
};
private String[] prepareTextForRecycleView(){
String[] ret = new String[MainActivity.getSpeechAsText().size()/2];
int j = 0;
for(int i = 0; i < MainActivity.getSpeechAsText().size(); i++){
if (!(i % 2 == 0)){
ret[j] = MainActivity.getSpeechAsText().get(i-1) + " - " + MainActivity.getSpeechAsText().get(i);
j++;
}
}
return ret;
}
解决方案
推荐阅读
- html - 我的类选择器被元素选择器覆盖
- javascript - 如何将图像从 javascript 传递到 Python Flask 应用程序
- javascript - 增长时初始化/清空 Redux 状态
- javascript - (JavaScript/CEP) 是否可以在 InDesign 上获取我的页面的来源?
- sql - 如何使用 PostGIS 缓冲点图层并查找点是否在这些缓冲区内,忽略每个缓冲区自己的中心点
- python - Flask-Login login_user() 显示来自 Set-Cookie 标头的加密 cookie
- kubernetes - Kubernetes 入口的默认超时值
- android - 关闭应用程序时是否可以发送消息数据
- django - 用户模型上定义的属性不起作用
- r - 使用 tiddyverse 使用 read_csv() 读取文件时出现“NA”值错误