From d091c47a0c8c7e1eddb3c027383c7d1bd0eafb8a Mon Sep 17 00:00:00 2001 From: klaus Date: Thu, 14 Mar 2024 18:01:45 +0900 Subject: [PATCH] =?UTF-8?q?=EC=BD=98=ED=85=90=EC=B8=A0=20=EB=A6=AC?= =?UTF-8?q?=EC=8A=A4=ED=8A=B8,=20=EB=9D=BC=EC=9D=B4=EB=B8=8C=20=EC=A4=91?= =?UTF-8?q?=20=EC=A0=84=EC=B2=B4=EB=B3=B4=EA=B8=B0=20-=20=EA=B7=B8?= =?UTF-8?q?=EB=A6=AC=EB=93=9C=20=EC=95=84=EC=9D=B4=ED=85=9C=20=EC=82=AC?= =?UTF-8?q?=EC=9D=B4=20=EA=B0=84=EA=B2=A9=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../all/AudioContentNewAllActivity.kt | 18 +-------- .../AudioContentAllByThemeActivity.kt | 18 +-------- .../curation/AudioContentCurationActivity.kt | 18 +-------- .../common/GridSpacingItemDecoration.kt | 37 +++++++++++++++++++ .../live/now/all/LiveNowAllActivity.kt | 20 +--------- .../live/now/all/LiveNowAllAdapter.kt | 23 +++++++----- app/src/main/res/layout/item_live_now_all.xml | 1 + 7 files changed, 59 insertions(+), 76 deletions(-) create mode 100644 app/src/main/java/kr/co/vividnext/sodalive/common/GridSpacingItemDecoration.kt diff --git a/app/src/main/java/kr/co/vividnext/sodalive/audio_content/all/AudioContentNewAllActivity.kt b/app/src/main/java/kr/co/vividnext/sodalive/audio_content/all/AudioContentNewAllActivity.kt index 06af670..79adf0f 100644 --- a/app/src/main/java/kr/co/vividnext/sodalive/audio_content/all/AudioContentNewAllActivity.kt +++ b/app/src/main/java/kr/co/vividnext/sodalive/audio_content/all/AudioContentNewAllActivity.kt @@ -12,6 +12,7 @@ import kr.co.vividnext.sodalive.audio_content.detail.AudioContentDetailActivity import kr.co.vividnext.sodalive.audio_content.main.new_content.AudioContentMainNewContentThemeAdapter import kr.co.vividnext.sodalive.base.BaseActivity import kr.co.vividnext.sodalive.common.Constants +import kr.co.vividnext.sodalive.common.GridSpacingItemDecoration import kr.co.vividnext.sodalive.common.LoadingDialog import kr.co.vividnext.sodalive.databinding.ActivityAudioContentNewAllBinding import kr.co.vividnext.sodalive.explorer.profile.UserProfileActivity @@ -108,22 +109,7 @@ class AudioContentNewAllActivity : BaseActivity= spanCount) { + outRect.top = spacing // Item top + } + } + } +} diff --git a/app/src/main/java/kr/co/vividnext/sodalive/live/now/all/LiveNowAllActivity.kt b/app/src/main/java/kr/co/vividnext/sodalive/live/now/all/LiveNowAllActivity.kt index 577457e..c1b80e8 100644 --- a/app/src/main/java/kr/co/vividnext/sodalive/live/now/all/LiveNowAllActivity.kt +++ b/app/src/main/java/kr/co/vividnext/sodalive/live/now/all/LiveNowAllActivity.kt @@ -2,7 +2,6 @@ package kr.co.vividnext.sodalive.live.now.all import android.annotation.SuppressLint import android.content.Intent -import android.graphics.Rect import android.os.Bundle import android.view.View import android.widget.Toast @@ -12,13 +11,12 @@ import androidx.recyclerview.widget.RecyclerView import kr.co.vividnext.sodalive.audio_content.AudioContentPlayService import kr.co.vividnext.sodalive.base.BaseActivity import kr.co.vividnext.sodalive.common.Constants +import kr.co.vividnext.sodalive.common.GridSpacingItemDecoration import kr.co.vividnext.sodalive.common.LoadingDialog import kr.co.vividnext.sodalive.common.SharedPreferenceManager import kr.co.vividnext.sodalive.databinding.ActivityLiveNowAllBinding -import kr.co.vividnext.sodalive.extensions.dpToPx import kr.co.vividnext.sodalive.extensions.moneyFormat import kr.co.vividnext.sodalive.live.LiveViewModel -import kr.co.vividnext.sodalive.live.now.LiveNowAdapter import kr.co.vividnext.sodalive.live.room.LiveRoomActivity import kr.co.vividnext.sodalive.live.room.detail.LiveRoomDetailFragment import kr.co.vividnext.sodalive.live.room.dialog.LivePaymentDialog @@ -66,21 +64,7 @@ class LiveNowAllActivity : BaseActivity( } recyclerView.layoutManager = GridLayoutManager(this, 3) - recyclerView.addItemDecoration(object : RecyclerView.ItemDecoration() { - override fun getItemOffsets( - outRect: Rect, - view: View, - parent: RecyclerView, - state: RecyclerView.State - ) { - super.getItemOffsets(outRect, view, parent, state) - - outRect.top = 16f.dpToPx().toInt() - outRect.bottom = 16f.dpToPx().toInt() - outRect.left = 4f.dpToPx().toInt() - outRect.right = 4f.dpToPx().toInt() - } - }) + recyclerView.addItemDecoration(GridSpacingItemDecoration(3, 13, true)) recyclerView.addOnScrollListener(object : RecyclerView.OnScrollListener() { override fun onScrolled(recyclerView: RecyclerView, dx: Int, dy: Int) { diff --git a/app/src/main/java/kr/co/vividnext/sodalive/live/now/all/LiveNowAllAdapter.kt b/app/src/main/java/kr/co/vividnext/sodalive/live/now/all/LiveNowAllAdapter.kt index 00a997e..1d9fa64 100644 --- a/app/src/main/java/kr/co/vividnext/sodalive/live/now/all/LiveNowAllAdapter.kt +++ b/app/src/main/java/kr/co/vividnext/sodalive/live/now/all/LiveNowAllAdapter.kt @@ -24,7 +24,6 @@ class LiveNowAllAdapter( var items = mutableListOf() inner class ViewHolder( - private val context: Context, private val binding: ItemLiveNowAllBinding ) : RecyclerView.ViewHolder(binding.root) { @SuppressLint("SetTextI18n") @@ -70,15 +69,20 @@ class LiveNowAllAdapter( transformations(CircleCropTransformation()) } - if (item.numberOfPeople > item.numberOfParticipate) { - binding.tvRemainingParticipantNumber.visibility = View.VISIBLE - binding.tvRemainingParticipant.text = "잔여" - binding.tvRemainingParticipantNumber.text = - "${item.numberOfPeople - item.numberOfParticipate}" + if (item.numberOfPeople - item.numberOfParticipate <= 2) { + binding.llRemainingParticipant.visibility = View.VISIBLE + if (item.numberOfPeople > item.numberOfParticipate) { + binding.tvRemainingParticipantNumber.visibility = View.VISIBLE + binding.tvRemainingParticipant.text = "잔여" + binding.tvRemainingParticipantNumber.text = + "${item.numberOfPeople - item.numberOfParticipate}" + } else { + binding.tvRemainingParticipantNumber.visibility = View.GONE + binding.tvRemainingParticipant.text = "Sold out" + binding.tvRemainingParticipantNumber.text = "" + } } else { - binding.tvRemainingParticipantNumber.visibility = View.GONE - binding.tvRemainingParticipant.text = "Sold out" - binding.tvRemainingParticipantNumber.text = "" + binding.llRemainingParticipant.visibility = View.GONE } binding.root.setOnClickListener { onClick(item) } @@ -86,7 +90,6 @@ class LiveNowAllAdapter( } override fun onCreateViewHolder(parent: ViewGroup, viewType: Int) = ViewHolder( - parent.context, ItemLiveNowAllBinding.inflate( LayoutInflater.from(parent.context), parent, diff --git a/app/src/main/res/layout/item_live_now_all.xml b/app/src/main/res/layout/item_live_now_all.xml index b1dd29c..369d3df 100644 --- a/app/src/main/res/layout/item_live_now_all.xml +++ b/app/src/main/res/layout/item_live_now_all.xml @@ -57,6 +57,7 @@ app:layout_constraintTop_toTopOf="parent" />