라이브 지금 예약중 - 라이브 커버 이미지 사이즈가 작게 보이던 버그 수정

This commit is contained in:
klaus 2023-10-06 17:31:31 +09:00
parent 0e6c78a6c0
commit 3bf4f273d2
8 changed files with 73 additions and 17 deletions

View File

@ -1,13 +1,16 @@
package kr.co.vividnext.sodalive.live.reservation
import android.annotation.SuppressLint
import android.content.Context
import android.graphics.Bitmap
import android.graphics.drawable.Drawable
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.recyclerview.widget.RecyclerView
import coil.load
import coil.transform.RoundedCornersTransformation
import kr.co.vividnext.sodalive.R
import com.bumptech.glide.Glide
import com.bumptech.glide.request.target.CustomTarget
import com.bumptech.glide.request.transition.Transition
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
import kr.co.vividnext.sodalive.databinding.ItemLiveReservationBinding
import kr.co.vividnext.sodalive.databinding.ItemMyLiveReservationBinding
@ -24,6 +27,7 @@ class LiveReservationAdapter(
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder {
return if (viewType == 1) {
MyLiveViewHolder(
parent.context,
ItemMyLiveReservationBinding.inflate(
LayoutInflater.from(parent.context),
parent,
@ -32,6 +36,7 @@ class LiveReservationAdapter(
)
} else {
ViewHolder(
parent.context,
ItemLiveReservationBinding.inflate(
LayoutInflater.from(parent.context),
parent,
@ -70,15 +75,31 @@ class LiveReservationAdapter(
}
inner class ViewHolder(
private val context: Context,
private val binding: ItemLiveReservationBinding
) : RecyclerView.ViewHolder(binding.root) {
fun bind(item: GetRoomListResponse) {
binding.ivCover.load(item.coverImageUrl) {
crossfade(true)
placeholder(R.drawable.ic_place_holder)
transformations(RoundedCornersTransformation(4.7f.dpToPx()))
}
val lp = binding.ivCover.layoutParams
lp.width = 80f.dpToPx().toInt()
lp.height = 116.7f.dpToPx().toInt()
Glide
.with(context)
.asBitmap()
.load(item.coverImageUrl)
.into(object : CustomTarget<Bitmap>() {
override fun onResourceReady(
resource: Bitmap,
transition: Transition<in Bitmap>?
) {
binding.ivCover.setImageBitmap(resource)
binding.ivCover.layoutParams = lp
}
override fun onLoadCleared(placeholder: Drawable?) {
}
})
binding.tvDate.text = item.beginDateTime
binding.tvNickname.text = item.creatorNickname
binding.tvTitle.text = item.title
@ -106,6 +127,7 @@ class LiveReservationAdapter(
}
inner class MyLiveViewHolder(
private val context: Context,
private val binding: ItemMyLiveReservationBinding
) : RecyclerView.ViewHolder(binding.root) {
fun bind(item: GetRoomListResponse, position: Int) {
@ -114,11 +136,27 @@ class LiveReservationAdapter(
} else {
View.GONE
}
binding.ivCover.load(item.coverImageUrl) {
crossfade(true)
placeholder(R.drawable.ic_place_holder)
transformations(RoundedCornersTransformation(4f.dpToPx()))
}
val lp = binding.ivCover.layoutParams
lp.width = 80f.dpToPx().toInt()
lp.height = 116.7f.dpToPx().toInt()
Glide
.with(context)
.asBitmap()
.load(item.coverImageUrl)
.into(object : CustomTarget<Bitmap>() {
override fun onResourceReady(
resource: Bitmap,
transition: Transition<in Bitmap>?
) {
binding.ivCover.setImageBitmap(resource)
binding.ivCover.layoutParams = lp
}
override fun onLoadCleared(placeholder: Drawable?) {
}
})
binding.tvDate.text = item.beginDateTime
binding.tvNickname.text = item.creatorNickname
binding.tvTitle.text = item.title

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="@color/color_2e6279" />
<corners android:radius="10dp" />
<stroke
android:width="1dp"
android:color="@color/color_2e6279" />
</shape>

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="@android:color/transparent" />
<corners android:radius="8dp" />
<stroke
android:width="1dp"
android:color="@color/color_3bb9f1" />
</shape>

View File

@ -93,7 +93,7 @@
android:id="@+id/tv_complete_reservation"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/bg_round_corner_10_533d89"
android:background="@drawable/bg_round_corner_10_2e6279"
android:fontFamily="@font/gmarket_sans_medium"
android:paddingHorizontal="7.5dp"
android:paddingVertical="4.3dp"

View File

@ -15,14 +15,14 @@
android:drawablePadding="8dp"
android:fontFamily="@font/gmarket_sans_bold"
android:text="내가 개설한 라이브"
android:textColor="@color/color_9970ff"
android:textColor="@color/color_80d8ff"
android:textSize="16sp"
app:drawableStartCompat="@drawable/ic_mic_colored" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/bg_round_corner_8_transparent_9970ff"
android:background="@drawable/bg_round_corner_8_transparent_3bb9f1"
android:orientation="horizontal"
android:padding="1dp">

View File

@ -28,7 +28,7 @@
android:layout_height="wrap_content"
android:fontFamily="@font/gmarket_sans_bold"
android:text="예약중"
android:textColor="@color/color_9970ff"
android:textColor="@color/color_3bb9f1"
android:textSize="18.3sp" />
</LinearLayout>

View File

@ -98,4 +98,6 @@
<color name="color_ffe368">#FFE368</color>
<color name="color_ccf0ff">#CCF0FF</color>
<color name="color_13181b">#13181B</color>
<color name="color_3bb9f1">#3BB9F1</color>
<color name="color_2e6279">#2E6279</color>
</resources>