diff --git a/app/src/main/java/kr/co/vividnext/sodalive/live/now/LiveNowAdapter.kt b/app/src/main/java/kr/co/vividnext/sodalive/live/now/LiveNowAdapter.kt index 46205e89..c69ffe20 100644 --- a/app/src/main/java/kr/co/vividnext/sodalive/live/now/LiveNowAdapter.kt +++ b/app/src/main/java/kr/co/vividnext/sodalive/live/now/LiveNowAdapter.kt @@ -60,8 +60,31 @@ class LiveNowAdapter( binding.tvFree.visibility = View.VISIBLE } + bindTags(item) + binding.root.setOnClickListener { onClick(item) } } + + private fun bindTags(item: GetRoomListResponse) { + val tags = item.tags.filter { it.isNotBlank() }.take(2) + if (tags.isEmpty()) { + binding.llTags.visibility = View.GONE + binding.tvTag1.visibility = View.GONE + binding.tvTag2.visibility = View.GONE + return + } + + binding.llTags.visibility = View.VISIBLE + binding.tvTag1.text = tags[0] + binding.tvTag1.visibility = View.VISIBLE + + if (tags.size > 1) { + binding.tvTag2.text = tags[1] + binding.tvTag2.visibility = View.VISIBLE + } else { + binding.tvTag2.visibility = View.GONE + } + } } override fun onCreateViewHolder(parent: ViewGroup, viewType: Int) = ViewHolder( 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 4c20dde0..8ebf1f98 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 @@ -34,9 +34,14 @@ class LiveNowAllAdapter( val rootLayoutParams = binding.root.layoutParams rootLayoutParams.width = itemWidth - rootLayoutParams.height = (baseCardHeight * scale).roundToInt() + rootLayoutParams.height = ViewGroup.LayoutParams.WRAP_CONTENT binding.root.layoutParams = rootLayoutParams + val cardLayoutParams = binding.cardLiveNow.layoutParams + cardLayoutParams.width = itemWidth + cardLayoutParams.height = (baseCardHeight * scale).roundToInt() + binding.cardLiveNow.layoutParams = cardLayoutParams + val profileLayoutParams = binding.flProfile.layoutParams profileLayoutParams.width = (84.dpToPx() * scale).roundToInt() profileLayoutParams.height = (84.dpToPx() * scale).roundToInt() @@ -80,9 +85,31 @@ class LiveNowAllAdapter( binding.tvTitle.text = item.title binding.tvNickname.text = item.creatorNickname + bindTags(item) binding.root.setOnClickListener { onClick(item) } } + + private fun bindTags(item: GetRoomListResponse) { + val tags = item.tags.filter { it.isNotBlank() }.take(2) + if (tags.isEmpty()) { + binding.llTags.visibility = View.GONE + binding.tvTag1.visibility = View.GONE + binding.tvTag2.visibility = View.GONE + return + } + + binding.llTags.visibility = View.VISIBLE + binding.tvTag1.text = tags[0] + binding.tvTag1.visibility = View.VISIBLE + + if (tags.size > 1) { + binding.tvTag2.text = tags[1] + binding.tvTag2.visibility = View.VISIBLE + } else { + binding.tvTag2.visibility = View.GONE + } + } } override fun onCreateViewHolder(parent: ViewGroup, viewType: Int) = ViewHolder( diff --git a/app/src/main/res/drawable/bg_round_corner_8_37474f.xml b/app/src/main/res/drawable/bg_round_corner_8_37474f.xml new file mode 100644 index 00000000..dccd4ea3 --- /dev/null +++ b/app/src/main/res/drawable/bg_round_corner_8_37474f.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/app/src/main/res/layout/item_live_now.xml b/app/src/main/res/layout/item_live_now.xml index 4487951d..9d717389 100644 --- a/app/src/main/res/layout/item_live_now.xml +++ b/app/src/main/res/layout/item_live_now.xml @@ -1,152 +1,200 @@ - + android:layout_height="wrap_content" + android:orientation="vertical"> - + android:layout_height="204dp" + app:cardBackgroundColor="#263238" + app:cardCornerRadius="16dp"> - + - - - - - - + android:src="@drawable/ic_lock" + android:visibility="gone" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent" /> - - + android:src="@drawable/ic_shield" + android:visibility="gone" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintTop_toTopOf="parent" /> - + + - + + - - - - - - + + + - - + android:layout_width="0dp" + android:layout_height="0dp" + android:layout_marginHorizontal="2dp" + android:layout_marginVertical="8dp" + android:orientation="vertical" + app:layout_constraintBottom_toTopOf="@+id/fl_can" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toBottomOf="@+id/fl_profile"> + android:gravity="center" + android:textColor="@color/white" + android:textSize="16sp" + tools:text="도화" /> + + - - - + + + + + + + + + + + + + + + + + + + + + +