Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/191.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在刷卡后在RecyclerView中刷回项目_Java_Android_Kotlin_Android Recyclerview_Swipe - Fatal编程技术网

Java 如何在刷卡后在RecyclerView中刷回项目

Java 如何在刷卡后在RecyclerView中刷回项目,java,android,kotlin,android-recyclerview,swipe,Java,Android,Kotlin,Android Recyclerview,Swipe,在RecyclerView中刷过一个项目后,我希望它返回,而不需要手动刷回 这是RecyclerView中的一个swipeable项目。 回收视图中的项目 刷卡 在刷卡事件之后,我希望该项目返回,就好像它被刷卡的距离不够远一样,但事件必须发生。我该怎么做 刷卡后 这是我的SwipeHelper,它使背景保持静态: abstract class ProfileSwipeHelper : ItemTouchHelper.SimpleCallback(0, ItemTouchHelper

在RecyclerView中刷过一个项目后,我希望它返回,而不需要手动刷回

这是RecyclerView中的一个swipeable项目。
回收视图中的项目

刷卡

在刷卡事件之后,我希望该项目返回,就好像它被刷卡的距离不够远一样,但事件必须发生。我该怎么做

刷卡后

这是我的SwipeHelper,它使背景保持静态:

abstract class ProfileSwipeHelper : ItemTouchHelper.SimpleCallback(0,
    ItemTouchHelper.LEFT
) {
    override fun onMove(
        recyclerView: RecyclerView,
        viewHolder: RecyclerView.ViewHolder,
        target: RecyclerView.ViewHolder
    ): Boolean {
        return true
    }

    override fun onSelectedChanged(viewHolder: RecyclerView.ViewHolder?, actionState: Int) {
        if (viewHolder != null) {
            ItemTouchHelper.Callback.getDefaultUIUtil().onSelected((viewHolder as ProfilesAdapter.ViewHolder).foreground)
        }
    }

    override fun onChildDraw(
        c: Canvas,
        recyclerView: RecyclerView,
        viewHolder: RecyclerView.ViewHolder,
        dX: Float,
        dY: Float,
        actionState: Int,
        isCurrentlyActive: Boolean
    ) {
        getDefaultUIUtil().onDraw(c, recyclerView,
            (viewHolder as ProfilesAdapter.ViewHolder).foreground, dX, dY,
            actionState, isCurrentlyActive)

    }

    override fun onChildDrawOver(
        c: Canvas,
        recyclerView: RecyclerView,
        viewHolder: RecyclerView.ViewHolder?,
        dX: Float,
        dY: Float,
        actionState: Int,
        isCurrentlyActive: Boolean
    ) {
        getDefaultUIUtil().onDrawOver(
            c, recyclerView,
            (viewHolder as ProfilesAdapter.ViewHolder).foreground, dX, dY,
            actionState, isCurrentlyActive)
    }
    
    override fun clearView(recyclerView: RecyclerView, viewHolder: RecyclerView.ViewHolder) {
        getDefaultUIUtil().clearView((viewHolder as ProfilesAdapter.ViewHolder).foreground)
    }

}
以下是主要活动中的活动,仅包括祝酒词:

//Main Activity

                val context : Context  = this
        val deleteSwipeHandler1 = object : ProfileSwipeHelper() {
            override fun onSwiped(viewHolder: RecyclerView.ViewHolder, direction: Int) {
                Toast.makeText(context, "swiped", Toast.LENGTH_SHORT).show()
            }
        }
        ItemTouchHelper(deleteSwipeHandler1).attachToRecyclerView(rv_profiles)