王鹏鹏 пре 2 година
родитељ
комит
6ecd4b9e42

+ 1 - 1
mmse/src/main/java/com/yingyangfly/mmse/adapter/NumberAdapter.kt

@@ -29,7 +29,7 @@ class NumberAdapter(override val layoutId: Int = R.layout.item_number) :
         } else {
             binding.tvNumber.setTextColorResource(R.color.color_FF222222)
         }
-        binding.numberLayout.setOnTouchListener { v, event ->
+        binding.tvNumber.setOnTouchListener { v, event ->
             when (event.action) {
                 MotionEvent.ACTION_DOWN -> {
                     v.startAnimation(getScaleAnimation())

+ 2 - 1
mmse/src/main/res/layout/item_number.xml

@@ -25,11 +25,12 @@
         app:strokeColor="@color/color_FF979797"
         app:strokeWidth="@dimen/divider_1px">
 
-        <androidx.appcompat.widget.AppCompatTextView
+        <androidx.appcompat.widget.AppCompatButton
             android:id="@+id/tvNumber"
             android:layout_width="match_parent"
             android:layout_height="match_parent"
             android:layout_gravity="center"
+            android:background="@null"
             android:gravity="center"
             android:text="@{data}"
             android:textColor="@color/color_FF222222"

+ 24 - 8
moca/src/main/java/com/yingyangfly/moca/adapter/NumberAdapter.kt

@@ -1,11 +1,14 @@
 package com.yingyangfly.moca.adapter
 
+import android.annotation.SuppressLint
 import android.text.TextUtils
+import android.view.MotionEvent
 import android.view.View
 import com.yingyang.moca.R
 import com.yingyang.moca.databinding.ItemMocaNumberBinding
 import com.yingyangfly.baselib.adapter.BaseDataBindingAdapter
-import com.yingyangfly.baselib.ext.setOnSingleClickListener
+import com.yingyangfly.baselib.ext.getEndAnimation
+import com.yingyangfly.baselib.ext.getScaleAnimation
 import com.yingyangfly.baselib.ext.setTextColorResource
 
 /**
@@ -16,6 +19,7 @@ class NumberAdapter(override val layoutId: Int = R.layout.item_moca_number) :
 
     var onNumClickListener: ((view: View, bean: String, type: String) -> Unit)? = null
 
+    @SuppressLint("ClickableViewAccessibility")
     override fun onBindViewHolder(binding: ItemMocaNumberBinding, item: String, position: Int) {
         binding.data = item
         if (TextUtils.equals("删除", item)) {
@@ -25,14 +29,26 @@ class NumberAdapter(override val layoutId: Int = R.layout.item_moca_number) :
         } else {
             binding.tvNumber.setTextColorResource(R.color.color_FF222222)
         }
-        binding.numberLayout.setOnClickListener { v ->
-            if (TextUtils.equals("删除", item)) {
-                onNumClickListener?.invoke(v, "", "1")
-            } else if (TextUtils.equals("确定", item)) {
-                onNumClickListener?.invoke(v, "", "2")
-            } else {
-                onNumClickListener?.invoke(v, item, "0")
+        binding.tvNumber.setOnTouchListener { v, event ->
+            when (event.action) {
+                MotionEvent.ACTION_DOWN -> {
+                    v.startAnimation(getScaleAnimation())
+                }
+                MotionEvent.ACTION_UP -> {
+                    v.startAnimation(getEndAnimation())
+                    if (TextUtils.equals("删除", item)) {
+                        onNumClickListener?.invoke(v, "", "1")
+                    } else if (TextUtils.equals("确定", item)) {
+                        onNumClickListener?.invoke(v, "", "2")
+                    } else {
+                        onNumClickListener?.invoke(v, item, "0")
+                    }
+                }
+                MotionEvent.ACTION_CANCEL -> {
+                    v.startAnimation(getEndAnimation())
+                }
             }
+            true
         }
     }
 }

+ 2 - 1
moca/src/main/res/layout/item_moca_number.xml

@@ -24,11 +24,12 @@
         app:strokeColor="@color/color_FF979797"
         app:strokeWidth="@dimen/divider_1px">
 
-        <androidx.appcompat.widget.AppCompatTextView
+        <androidx.appcompat.widget.AppCompatButton
             android:id="@+id/tvNumber"
             android:layout_width="match_parent"
             android:layout_height="match_parent"
             android:layout_gravity="center"
+            android:background="@null"
             android:gravity="center"
             android:text="@{data}"
             android:textColor="@color/color_FF222222"