From f4d383dfe18a7cc5540c7bd5bd5bb9b64d6ac0bf Mon Sep 17 00:00:00 2001 From: lvmeng <848755140@qq.com> Date: Fri, 8 May 2026 16:12:03 +0800 Subject: [PATCH] =?UTF-8?q?feat(adapter):=20FoodMaterialAdapter=20?= =?UTF-8?q?=E6=97=A0=E9=87=8D=E9=87=8F=E6=97=B6=20ic=5Fdish=5Fclear=20?= =?UTF-8?q?=E6=9F=93=E7=81=B0=E8=89=B2=E5=B9=B6=E5=B0=86=E7=82=B9=E5=87=BB?= =?UTF-8?q?=E8=BD=AC=E5=8F=91=E4=B8=BA=20item=20=E9=80=89=E4=B8=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../shuwei/dish/match/adapter/FoodMaterialAdapter.kt | 10 ++++++++++ .../com/shuwei/dish/match/ui/PrepareFoodActivity.kt | 5 +++++ 2 files changed, 15 insertions(+) diff --git a/app/src/main/java/com/shuwei/dish/match/adapter/FoodMaterialAdapter.kt b/app/src/main/java/com/shuwei/dish/match/adapter/FoodMaterialAdapter.kt index 3848408..07881ac 100644 --- a/app/src/main/java/com/shuwei/dish/match/adapter/FoodMaterialAdapter.kt +++ b/app/src/main/java/com/shuwei/dish/match/adapter/FoodMaterialAdapter.kt @@ -1,6 +1,7 @@ package com.shuwei.dish.match.adapter import android.content.Context +import android.content.res.ColorStateList import android.view.LayoutInflater import android.view.ViewGroup import androidx.core.content.ContextCompat @@ -12,6 +13,7 @@ import com.shuwei.dish.match.entity.GoodsItem import com.shuwei.dish.match.utils.ext.gone import com.shuwei.dish.match.utils.ext.roundedOneDecimalPlace import com.shuwei.dish.match.utils.ext.visible +import androidx.core.graphics.toColorInt class FoodMaterialAdapter(list: MutableList) : BaseQuickAdapter(list) { @@ -54,6 +56,14 @@ class FoodMaterialAdapter(list: MutableList) : if (data.isOriginalData) R.drawable.ic_dish_clear else R.drawable.ic_delete ) + // isOriginalData 时根据是否有重量信息控制图标颜色:无重量染灰色,有重量恢复原色 + if (data.isOriginalData) { + val hasWeight = data.useWeight != null && data.useWeight != 0.0 + ivClearIcon.imageTintList = if (hasWeight) null + else ColorStateList.valueOf("#BFBFBF".toColorInt()) + } else { + ivClearIcon.imageTintList = null + } ivOperateIcon.setImageResource( if (data.isSetFinished) R.drawable.ic_dish_selected else R.drawable.ic_dish_unselected diff --git a/app/src/main/java/com/shuwei/dish/match/ui/PrepareFoodActivity.kt b/app/src/main/java/com/shuwei/dish/match/ui/PrepareFoodActivity.kt index d3b9191..f4739ff 100644 --- a/app/src/main/java/com/shuwei/dish/match/ui/PrepareFoodActivity.kt +++ b/app/src/main/java/com/shuwei/dish/match/ui/PrepareFoodActivity.kt @@ -387,6 +387,11 @@ class PrepareFoodActivity : BaseActivity() { Log.d(TAG, "onFoodItemClick: ${list[position].toJsonString()}") val item = list[position] if (item.isOriginalData) { + // 无重量信息时转为 item 整体点击(触发选中效果) + if (item.useWeight == null || item.useWeight == 0.0) { + onItemClick?.invoke(position) + return@addOnItemChildClickListener + } deleteRemindDialog("清除确认", "确定清除食材「${item.goodsName}」添加的重量吗?") { item.run { isNewDishType = false