gpt4 book ai didi

android - Recycler查看项目并滑动以显示按钮

转载 作者:行者123 更新时间:2023-12-02 20:39:38 24 4
gpt4 key购买 nike

我正在尝试为 RecyclerView 的项目实现滑动。实现主要基于this .

背景:

当用户滑动 View 时,它会移动到正确的位置,但不会消失。 - 确定

示例:在用户滑动的项目 2 下方。红色方 block 是 View 后面的背景。 enter image description here

然后:当用户点击(不是滑动)滑动的项目时,会触发转义动画(默认动画)。 - 好的

问题: View 不会完全返回到默认位置。用户可以在屏幕右侧看到部分背景(如下所示)。需要第二次点击才能将 View 设置在正确的位置。 - 不行 enter image description here

为了更好地展示行为,我创建了一个 GIF .

有关 ItemTouchHelper.SimpleCallback 的代码:

class SwipeCallback : ItemTouchHelper.SimpleCallback(0, ItemTouchHelper.LEFT) {


override fun onMove(recyclerView: RecyclerView, viewHolder: ViewHolder, target: ViewHolder) =
false

override fun onChildDraw(
canvas: Canvas,
recyclerView: RecyclerView,
viewHolder: ViewHolder,
dX: Float,
dY: Float,
actionState: Int,
active: Boolean
) {

if (actionState == ItemTouchHelper.ACTION_STATE_SWIPE) {

// SWIPE LEFT
if (dX < 0) {

// When transitionX is multiply by ~0.4f or lower value, view is displayed properly.
// Otherwise when user will "tap" the background will be shown.
// On the other hand if we do "proper" swipe to escape view will be displayed properly.
val transitionX = 0.7f * dX
super.onChildDraw(
canvas,
recyclerView,
viewHolder,
transitionX,
dY,
actionState,
active
)
}
}
}

override fun onSwiped(viewHolder: ViewHolder, direction: Int) {
}
}

Sample project证明某人是否感兴趣。

最佳答案

您尝试过AndroidSwipeLayout吗?已经有一个非常好的库,我也在我的应用程序中使用它。 https://github.com/daimajia/AndroidSwipeLayout

关于android - Recycler查看项目并滑动以显示按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59202447/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com