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