From d910adc74265bbd8f3a39b911c06fa0453522ee2 Mon Sep 17 00:00:00 2001 From: 0zlrlo <99941493+0zlrlo@users.noreply.github.com> Date: Wed, 5 Jul 2023 23:08:22 +0900 Subject: [PATCH] =?UTF-8?q?[FEAT/#32]=20=EB=93=9C=EB=94=94=EC=96=B4=20isEd?= =?UTF-8?q?it=EA=B0=80=20true=EC=9D=BC=20=EB=95=8C=EB=A7=8C=20=ED=81=B4?= =?UTF-8?q?=EB=A6=AD=EB=90=98=EB=8A=94=20=EA=B2=83=EB=8F=84=20=ED=95=B4?= =?UTF-8?q?=EA=B2=B0=20=EC=99=84=EB=A3=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../presentation/main/like/LikeAdapter.kt | 26 +++++++++++-------- .../presentation/main/like/LikeFragment.kt | 5 ++-- 2 files changed, 18 insertions(+), 13 deletions(-) diff --git a/app/src/main/java/com/release/keyneez/presentation/main/like/LikeAdapter.kt b/app/src/main/java/com/release/keyneez/presentation/main/like/LikeAdapter.kt index 6412f3e..146551d 100644 --- a/app/src/main/java/com/release/keyneez/presentation/main/like/LikeAdapter.kt +++ b/app/src/main/java/com/release/keyneez/presentation/main/like/LikeAdapter.kt @@ -3,6 +3,7 @@ package com.release.keyneez.presentation.main.like import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import androidx.lifecycle.LiveData import androidx.recyclerview.widget.ListAdapter import androidx.recyclerview.widget.RecyclerView import com.release.keyneez.databinding.ItemLikeContentBinding @@ -12,32 +13,34 @@ import com.release.keyneez.util.extension.setOnSingleClickListener class LikeAdapter( private val setItemsSelected: (Int) -> List, - private val getSelectedIdsCount: (Int) -> Int + private val getSelectedIdsCount: (Int) -> Int, + private val isEdit: LiveData ) : ListAdapter(diffUtil) { private var selectedActivity = arrayListOf() inner class LikeViewHolder( private val binding: ItemLikeContentBinding, private val setItemsSelected: (Int) -> List, - private val getSelectedIdsCount: (Int) -> Int + private val getSelectedIdsCount: (Int) -> Int, + private val isEdit: LiveData ) : RecyclerView.ViewHolder(binding.root) { fun bind(item: Activity) { with(binding) { data = item ivLikeBackground.setOnSingleClickListener { - item.isSelected = !item.isSelected - setItemsSelected(item.id) - binding.ivLikeCheckedBackground.visibility = - if (item.isSelected) View.VISIBLE else View.GONE - binding.btnLikeChecked.visibility = - if (item.isSelected) View.VISIBLE else View.GONE + if (isEdit.value == true) { + item.isSelected = !item.isSelected + setItemsSelected(item.id) + binding.ivLikeCheckedBackground.visibility = + if (item.isSelected) View.VISIBLE else View.GONE + binding.btnLikeChecked.visibility = + if (item.isSelected) View.VISIBLE else View.GONE + } } } } } - fun getSelectedExpense() = selectedActivity.size - override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder { val binding = ItemLikeContentBinding.inflate( LayoutInflater.from(parent.context), @@ -47,7 +50,8 @@ class LikeAdapter( return LikeViewHolder( binding, setItemsSelected, - getSelectedIdsCount + getSelectedIdsCount, + isEdit ) } diff --git a/app/src/main/java/com/release/keyneez/presentation/main/like/LikeFragment.kt b/app/src/main/java/com/release/keyneez/presentation/main/like/LikeFragment.kt index c6fa7b7..209c19c 100644 --- a/app/src/main/java/com/release/keyneez/presentation/main/like/LikeFragment.kt +++ b/app/src/main/java/com/release/keyneez/presentation/main/like/LikeFragment.kt @@ -20,6 +20,7 @@ class LikeFragment : lateinit var likeList: List private val likeViewModel by viewModels() private val mainViewModel by activityViewModels() + override fun onAttach(context: Context) { super.onAttach(context) } @@ -36,7 +37,8 @@ class LikeFragment : private fun initLikeAdapter() { likeAdapter = LikeAdapter( setItemsSelected = likeViewModel::setItemsSelected, - getSelectedIdsCount = likeViewModel::getSelectedIdsCount + getSelectedIdsCount = likeViewModel::getSelectedIdsCount, + isEdit = likeViewModel.isEdit ) binding.rvLike.adapter = likeAdapter val animator = binding.rvLike.itemAnimator @@ -50,7 +52,6 @@ class LikeFragment : private fun initLikeEditBtnClickListener() { binding.btnLikeEdit.setOnSingleClickListener { - Log.d("1", "제발편집버튼") likeViewModel.updateEditView() mainViewModel.updateBnvView() }