我曾经使用过SwipeToDismiss个库,但现在我正try 迁移到ReccyclerView,情况不是很明显,你知道这个库有什么替代方法吗?有什么 idea 可以从头开始实施吗?

推荐答案

从v22.2.0开始,Android支持团队已经包含了一个ItemTouchHelper类,它使得滑动到取消和拖放变得非常简单.这可能不像一些库那样功能齐全,但它直接来自Android团队.

  • 更新你的版本.gradle需要进口v22.2.+回收视图库

    compile 'com.android.support:recyclerview-v7:22.2.+'
    
  • 使用适当的SimpleCallback实例化ItemTouchHelper

    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
        }
    };
    
    ItemTouchHelper itemTouchHelper = new ItemTouchHelper(simpleItemTouchCallback);
    

    **请注意,SimpleCallback接受要启用拖放的方向和要启用滑动的方向.

  • 连接到你的回收视图

    itemTouchHelper.attachToRecyclerView(recyclerView);
    

Android相关问答推荐

在Android应用程序上使用Room数据库时,是否可以预先填充数据

如何将子零部件的大小调整为可以调整大小的父组件大小?

如何go 除回调流中不可用的状态?

我到底应该如何分享我的应用程序中的图片?

如何判断堆肥是否为空?

如何使用其他组件的位置来定位自定义弹出窗口

如何在Android Studio中禁用文件中的Github用户名引用?

相机2问题:设置AE区域、AF区域和AWB区域.

列语义在列中的第一个元素之后读取

如何从包装在泛型中的 retrofit 调用中检索密钥?

Android Studio 复制类 kotlin

Kotlin File(path).walkTopDown() 找不到文件

无法找到方法 ''java.io.File > org.jetbrains.kotlin.gradle.tasks.KotlinCompile.getDestinationDir()

Jetpack Compose Material3 禁用 ListItem

Jetpack Compose:SpanStyle 的 TextAlign(垂直居中)

Kotlin Coroutines 会取代 AsyncTask 吗?

单击登录按钮后从应用程序中退出

如何从构建的流对象中发出值

将生成的 AAR 与 Composables 一起使用时未解决的参考

AndroidX Room 生成类错误:类是公共的,应在名为 class.java 的文件中声明