feat(adapter): FoodMaterialAdapter 无重量时 ic_dish_clear 染灰色并将点击转发为 item 选中
This commit is contained in:
@@ -1,6 +1,7 @@
|
|||||||
package com.shuwei.dish.match.adapter
|
package com.shuwei.dish.match.adapter
|
||||||
|
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
|
import android.content.res.ColorStateList
|
||||||
import android.view.LayoutInflater
|
import android.view.LayoutInflater
|
||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
import androidx.core.content.ContextCompat
|
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.gone
|
||||||
import com.shuwei.dish.match.utils.ext.roundedOneDecimalPlace
|
import com.shuwei.dish.match.utils.ext.roundedOneDecimalPlace
|
||||||
import com.shuwei.dish.match.utils.ext.visible
|
import com.shuwei.dish.match.utils.ext.visible
|
||||||
|
import androidx.core.graphics.toColorInt
|
||||||
|
|
||||||
class FoodMaterialAdapter(list: MutableList<GoodsItem>) :
|
class FoodMaterialAdapter(list: MutableList<GoodsItem>) :
|
||||||
BaseQuickAdapter<GoodsItem, FoodMaterialAdapter.VH>(list) {
|
BaseQuickAdapter<GoodsItem, FoodMaterialAdapter.VH>(list) {
|
||||||
@@ -54,6 +56,14 @@ class FoodMaterialAdapter(list: MutableList<GoodsItem>) :
|
|||||||
if (data.isOriginalData) R.drawable.ic_dish_clear
|
if (data.isOriginalData) R.drawable.ic_dish_clear
|
||||||
else R.drawable.ic_delete
|
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(
|
ivOperateIcon.setImageResource(
|
||||||
if (data.isSetFinished) R.drawable.ic_dish_selected
|
if (data.isSetFinished) R.drawable.ic_dish_selected
|
||||||
else R.drawable.ic_dish_unselected
|
else R.drawable.ic_dish_unselected
|
||||||
|
|||||||
@@ -387,6 +387,11 @@ class PrepareFoodActivity : BaseActivity() {
|
|||||||
Log.d(TAG, "onFoodItemClick: ${list[position].toJsonString()}")
|
Log.d(TAG, "onFoodItemClick: ${list[position].toJsonString()}")
|
||||||
val item = list[position]
|
val item = list[position]
|
||||||
if (item.isOriginalData) {
|
if (item.isOriginalData) {
|
||||||
|
// 无重量信息时转为 item 整体点击(触发选中效果)
|
||||||
|
if (item.useWeight == null || item.useWeight == 0.0) {
|
||||||
|
onItemClick?.invoke(position)
|
||||||
|
return@addOnItemChildClickListener
|
||||||
|
}
|
||||||
deleteRemindDialog("清除确认", "确定清除食材「${item.goodsName}」添加的重量吗?") {
|
deleteRemindDialog("清除确认", "确定清除食材「${item.goodsName}」添加的重量吗?") {
|
||||||
item.run {
|
item.run {
|
||||||
isNewDishType = false
|
isNewDishType = false
|
||||||
|
|||||||
Reference in New Issue
Block a user