From 5d217d025bdbcefd3d3b68dff88aae821455437a Mon Sep 17 00:00:00 2001 From: renhaoting <370797079@qq.com> Date: Fri, 26 Dec 2025 14:33:07 +0800 Subject: [PATCH] =?UTF-8?q?bug=E4=BF=AE=E6=94=B9=20-=20=E8=A7=86=E9=A2=91?= =?UTF-8?q?=E4=B8=BB=E7=95=8C=E9=9D=A2=E7=9A=84=E9=82=A3=E4=B8=AA=E7=BA=A2?= =?UTF-8?q?=E5=8C=85=E8=BF=9B=E5=BA=A6=E6=9D=A1=EF=BC=8C=E5=A6=82=E6=9E=9C?= =?UTF-8?q?=E5=9C=A8=E8=BF=9B=E5=BA=A6=E6=9D=A1=E6=B2=A1=E6=9C=89=E6=BB=A1?= =?UTF-8?q?=E7=9A=84=E6=97=B6=E5=80=99=E7=82=B9=E5=87=BB=E7=BA=A2=E5=8C=85?= =?UTF-8?q?=E7=9A=84=E8=AF=9D=EF=BC=8C=E5=8F=AF=E4=BB=A5=E5=8A=A0=E4=B8=80?= =?UTF-8?q?=E4=B8=AAtips?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../gamedog/vididin/widget/HomeDragIconView.kt | 5 ++++- .../main/res/layout/layout_drag_icon_view.xml | 4 +++- .../com/ama/core/common/widget/DragLayout.kt | 18 ++++++++++++++++-- 3 files changed, 23 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/gamedog/vididin/widget/HomeDragIconView.kt b/app/src/main/java/com/gamedog/vididin/widget/HomeDragIconView.kt index d002bc5..d6c0ce6 100644 --- a/app/src/main/java/com/gamedog/vididin/widget/HomeDragIconView.kt +++ b/app/src/main/java/com/gamedog/vididin/widget/HomeDragIconView.kt @@ -10,6 +10,7 @@ import android.view.LayoutInflater import android.widget.LinearLayout import androidx.core.view.isVisible import com.ama.core.architecture.util.AndroidUtil +import com.ama.core.architecture.util.setOnClickBatch import com.vididin.real.money.game.R import com.vididin.real.money.game.databinding.LayoutDragIconViewBinding @@ -24,9 +25,11 @@ class HomeDragIconView @JvmOverloads constructor( init { mBinding = LayoutDragIconViewBinding.inflate(LayoutInflater.from(context), this, true) - mBinding.progressContainer.setOnClickListener { + + mBinding.dragLayout.setClickedCallback{ AndroidUtil.showTopToast(R.string.gold_not_ready_hint) } + } diff --git a/app/src/main/res/layout/layout_drag_icon_view.xml b/app/src/main/res/layout/layout_drag_icon_view.xml index 29e0601..c624200 100644 --- a/app/src/main/res/layout/layout_drag_icon_view.xml +++ b/app/src/main/res/layout/layout_drag_icon_view.xml @@ -1,6 +1,7 @@ + android:layout_height="wrap_content" + android:focusable="true"> Unit)? = null + var onDragStart: ((View) -> Unit)? = null var onDragEnd: ((View) -> Unit)? = null @@ -65,22 +70,27 @@ class DragLayout @JvmOverloads constructor( return false } + fun setClickedCallback(onClicked: ()->Unit) { + this.onClicked = onClicked + } + override fun onTouchEvent(event: MotionEvent): Boolean { if (draggedView == null) return false when (event.action and MotionEvent.ACTION_MASK) { MotionEvent.ACTION_DOWN -> { + startTouchX = event.x + startTouchY = event.y return true } MotionEvent.ACTION_MOVE -> { - if (!isDragging) { + if (!isDragging && (Math.abs((event.x - startTouchX)) > 5f || Math.abs((event.y - startTouchY)) > 5f)) { startDrag() } val dx = event.x - lastTouchX val dy = event.y - lastTouchY - updateViewPosition(dx, dy) lastTouchX = event.x lastTouchY = event.y @@ -88,6 +98,10 @@ class DragLayout @JvmOverloads constructor( } MotionEvent.ACTION_UP, MotionEvent.ACTION_CANCEL -> { + if (!isDragging) { + onClicked?.invoke() + } + endDrag() return true }