feat(user-channel): 유저 채널 UI 수정

- 최신 콘텐츠 아이템 표시
- 후원 순위 아이템 사이즈 수정
- 섹션 제목 사이즈 업
This commit is contained in:
2025-10-16 23:04:45 +09:00
parent 9ba053b807
commit ae92921b7b
8 changed files with 401 additions and 122 deletions

View File

@@ -9,6 +9,7 @@ import android.graphics.Rect
import android.os.Bundle
import android.os.Handler
import android.os.Looper
import android.text.style.ForegroundColorSpan
import android.view.LayoutInflater
import android.view.View
import android.view.inputmethod.InputMethodManager
@@ -16,6 +17,7 @@ import android.widget.LinearLayout
import android.widget.Toast
import androidx.annotation.OptIn
import androidx.appcompat.widget.PopupMenu
import androidx.core.graphics.toColorInt
import androidx.media3.common.util.UnstableApi
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView
@@ -24,6 +26,10 @@ import coil.transform.BlurTransformation
import coil.transform.CircleCropTransformation
import coil.transform.RoundedCornersTransformation
import coil.transform.Transformation
import com.bumptech.glide.Glide
import com.bumptech.glide.load.MultiTransformation
import com.bumptech.glide.load.resource.bitmap.CenterCrop
import com.bumptech.glide.load.resource.bitmap.RoundedCorners
import kr.co.vividnext.sodalive.R
import kr.co.vividnext.sodalive.audio_content.AudioContentActivity
import kr.co.vividnext.sodalive.audio_content.AudioContentAdapter
@@ -108,6 +114,11 @@ class UserProfileActivity : BaseActivity<ActivityUserProfileBinding>(
override fun setupView() {
loadingDialog = LoadingDialog(this, layoutInflater)
binding.tvBack.setOnClickListener { finish() }
binding.ivMenu.visibility = if (userId != SharedPreferenceManager.userId) {
View.VISIBLE
} else {
View.GONE
}
binding.ivMenu.setOnClickListener {
showOptionMenu(
this,
@@ -591,7 +602,12 @@ class UserProfileActivity : BaseActivity<ActivityUserProfileBinding>(
if (it.isCreator) {
setSeriesList(it.seriesList)
setAudioContentList(it.contentList)
setLatestContent(it.latestContent)
setAudioContentList(
it.contentList,
it.totalContentCount,
it.ownedContentCount
)
setLiveRoomList(it.liveRoomList)
setUserDonationRanking(it.userDonationRanking)
setCommunityPostList(it.communityPostList)
@@ -599,6 +615,58 @@ class UserProfileActivity : BaseActivity<ActivityUserProfileBinding>(
}
}
@OptIn(UnstableApi::class)
private fun setLatestContent(latestContent: GetAudioContentListItem?) {
if (latestContent != null) {
binding.clLatestContent.visibility = View.VISIBLE
Glide.with(this)
.load(latestContent.coverImageUrl)
.placeholder(R.drawable.ic_place_holder)
.transform(
MultiTransformation(
CenterCrop(),
RoundedCorners(16f.dpToPx().toInt())
)
)
.into(binding.ivLatestContentCover)
binding.tvLatestContentPoint.visibility = if (latestContent.isPointAvailable) {
View.VISIBLE
} else {
View.GONE
}
binding.tvScheduledToOpen.visibility = if (latestContent.isScheduledToOpen) {
View.VISIBLE
} else {
View.GONE
}
binding.tvLatestContentTitle.text = latestContent.title
binding.tvLatestContentTheme.text = latestContent.themeStr
binding.tvLatestContentDuration.text = latestContent.duration
binding.tvLatestContentLikeCount.text = latestContent.likeCount.toString()
binding.tvLatestContentCommentCount.text = latestContent.commentCount.toString()
binding.clLatestContent.setOnClickListener {
startActivity(
Intent(
applicationContext,
AudioContentDetailActivity::class.java
).apply {
putExtra(
Constants.EXTRA_AUDIO_CONTENT_ID,
latestContent.contentId
)
}
)
}
} else {
binding.clLatestContent.visibility = View.GONE
}
}
@SuppressLint("NotifyDataSetChanged", "SetTextI18n")
private fun setCheers(cheers: GetCheersResponse) {
binding.layoutUserProfileFanTalk.etCheer.setText("")
@@ -635,8 +703,9 @@ class UserProfileActivity : BaseActivity<ActivityUserProfileBinding>(
binding.tvNickname.text = creator.nickname
if (creator.creatorId == SharedPreferenceManager.userId) {
binding.tvFollowerList.visibility = View.VISIBLE
binding.ivNotification.visibility = View.GONE
binding.tvNotificationCount.visibility = View.GONE
binding.tvFollowerList.visibility = View.VISIBLE
binding.tvFollowerList.setOnClickListener {
val intent = Intent(applicationContext, UserFollowerListActivity::class.java)
@@ -644,8 +713,12 @@ class UserProfileActivity : BaseActivity<ActivityUserProfileBinding>(
startActivity(intent)
}
} else {
binding.ivNotification.visibility = View.VISIBLE
binding.tvFollowerList.visibility = View.GONE
binding.ivNotification.visibility = View.VISIBLE
binding.tvNotificationCount.visibility = View.VISIBLE
binding
.tvNotificationCount
.text = "팔로워 ${creator.notificationRecipientCount.moneyFormat()}"
}
if (creator.isFollow) {
@@ -682,10 +755,6 @@ class UserProfileActivity : BaseActivity<ActivityUserProfileBinding>(
}
}
binding
.tvNotificationCount
.text = "팔로워 ${creator.notificationRecipientCount.moneyFormat()}"
binding.nestedScrollView.setOnScrollChangeListener { _, _, scrollY, _, _ ->
if (scrollY >= screenWidth) {
binding.toolbar.setBackgroundColor(Color.BLACK)
@@ -709,16 +778,14 @@ class UserProfileActivity : BaseActivity<ActivityUserProfileBinding>(
startActivity(shareIntent)
}
}
val introduce = creator.introduce.ifBlank {
"채널 소개내용이 없습니다."
}
binding.layoutUserProfileIntroduce.tvIntroduce.text = introduce
}
@SuppressLint("NotifyDataSetChanged")
private fun setAudioContentList(audioContentList: List<GetAudioContentListItem>) {
@SuppressLint("NotifyDataSetChanged", "SetTextI18n")
private fun setAudioContentList(
audioContentList: List<GetAudioContentListItem>,
totalContentCount: Long,
ownedContentCount: Long
) {
binding.layoutUserProfileAudioContent.root.visibility =
if (userId == SharedPreferenceManager.userId || audioContentList.isNotEmpty()) {
View.VISIBLE
@@ -737,9 +804,34 @@ class UserProfileActivity : BaseActivity<ActivityUserProfileBinding>(
)
}
binding.layoutUserProfileAudioContent.tvNewContent.visibility = View.VISIBLE
binding.layoutUserProfileAudioContent.clRatio.visibility = View.GONE
} else {
binding.layoutUserProfileAudioContent.tvTitle.text = "콘텐츠"
binding.layoutUserProfileAudioContent.tvNewContent.visibility = View.GONE
binding.layoutUserProfileAudioContent.clRatio.visibility = View.VISIBLE
val ownedStr = ownedContentCount.toString()
val totalStr = totalContentCount.toString()
val fullText = "$ownedStr / ${totalStr}"
val spannable = android.text.SpannableString(fullText)
val ownedColor = "#FDD453".toColorInt()
spannable.setSpan(
ForegroundColorSpan(ownedColor),
/* start */ 0,
/* end */ ownedStr.length,
android.text.Spannable.SPAN_EXCLUSIVE_EXCLUSIVE
)
// 나머지는 TextView의 기본 색상(white)을 사용
binding.layoutUserProfileAudioContent.tvRatioRight.text = spannable
val ratio = ownedContentCount.toFloat() / totalContentCount.toFloat()
val percent = (ratio * 100).toInt()
binding.layoutUserProfileAudioContent.tvRatioLeft.text = if (ownedContentCount > 0) {
"${percent}% 보유중"
} else {
"소장 중인 작품이 없어요!"
}
binding.layoutUserProfileAudioContent.progressRatio.progress = percent
}
audioContentAdapter.items.clear()
@@ -793,9 +885,9 @@ class UserProfileActivity : BaseActivity<ActivityUserProfileBinding>(
@SuppressLint("NotifyDataSetChanged")
private fun setUserDonationRanking(userDonationRanking: List<UserDonationRankingResponse>) {
if (userDonationRanking.isEmpty()) {
binding.llUserProfileDonation.visibility = View.GONE
binding.layoutUserProfileDonation.root.visibility = View.GONE
} else {
binding.llUserProfileDonation.visibility = View.VISIBLE
binding.layoutUserProfileDonation.root.visibility = View.VISIBLE
donationAdapter.items.clear()
donationAdapter.items.addAll(userDonationRanking)
donationAdapter.notifyDataSetChanged()

View File

@@ -101,13 +101,188 @@
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/cl_latest_content"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="24dp"
android:layout_marginTop="48dp"
android:visibility="gone">
<ImageView
android:id="@+id/iv_latest_content_cover"
android:layout_width="133dp"
android:layout_height="133dp"
android:contentDescription="@null"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginHorizontal="10dp"
android:gravity="center_vertical"
android:orientation="vertical"
app:layout_constraintBottom_toBottomOf="@+id/iv_latest_content_cover"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/iv_latest_content_cover"
app:layout_constraintTop_toTopOf="@+id/iv_latest_content_cover">
<TextView
android:id="@+id/tv_latest_content_tagger"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/bg_round_corner_4_263238_3bb9f1"
android:paddingHorizontal="7dp"
android:paddingVertical="4dp"
android:text="최신 콘텐츠"
android:textColor="@color/color_3bb9f1"
android:textSize="12sp" />
<LinearLayout
android:id="@+id/ll_latest_content_desc"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:orientation="vertical">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TextView
android:id="@+id/tv_scheduled_to_open"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="8dp"
android:background="@drawable/bg_round_corner_2_6_003851"
android:fontFamily="@font/pretendard_medium"
android:padding="2.6dp"
android:text="오픈예정"
android:textColor="@color/color_3bb9f1"
android:textSize="8sp"
android:visibility="gone"
tools:ignore="SmallSp" />
<TextView
android:id="@+id/tv_latest_content_theme"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/bg_round_corner_2_6_28312b"
android:fontFamily="@font/pretendard_medium"
android:gravity="center"
android:padding="2.6dp"
android:textColor="@color/color_3bac6a"
android:textSize="12sp"
tools:text="커버곡" />
<TextView
android:id="@+id/tv_latest_content_duration"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:background="@drawable/bg_round_corner_2_6_222222"
android:fontFamily="@font/pretendard_medium"
android:gravity="center"
android:padding="2.6dp"
android:textColor="@color/color_777777"
android:textSize="12sp"
tools:text="00:30:20" />
<TextView
android:id="@+id/tv_latest_content_point"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:background="@drawable/bg_round_corner_2_6_7849bc"
android:fontFamily="@font/pretendard_medium"
android:gravity="center"
android:padding="2.6dp"
android:text="포인트"
android:textColor="@color/white"
android:textSize="12sp"
android:visibility="gone" />
</LinearLayout>
<TextView
android:id="@+id/tv_latest_content_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="2.6dp"
android:layout_marginBottom="6.7dp"
android:ellipsize="end"
android:fontFamily="@font/pretendard_medium"
android:maxLines="2"
android:textColor="@color/white"
android:textSize="18sp"
tools:text="안녕하세요 오늘은 커버곡을 들려드리려고 해요...." />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal"
tools:ignore="UseCompoundDrawables">
<ImageView
android:layout_width="24dp"
android:layout_height="24dp"
android:contentDescription="@null"
android:src="@drawable/ic_heart_777" />
<TextView
android:id="@+id/tv_latest_content_like_count"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="6dp"
android:fontFamily="@font/pretendard_medium"
android:gravity="center"
android:textColor="@color/color_777777"
android:textSize="18sp"
tools:text="7,680" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="13.3dp"
android:gravity="center_vertical"
android:orientation="horizontal"
tools:ignore="UseCompoundDrawables">
<ImageView
android:layout_width="24dp"
android:layout_height="24dp"
android:contentDescription="@null"
android:src="@drawable/ic_message_square_777" />
<TextView
android:id="@+id/tv_latest_content_comment_count"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="6dp"
android:fontFamily="@font/pretendard_medium"
android:gravity="center"
android:textColor="@color/color_777777"
android:textSize="18sp"
tools:text="150" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
<include
android:id="@+id/layout_user_profile_live"
layout="@layout/layout_user_profile_live"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="13.3dp"
android:layout_marginTop="26.7dp"
android:layout_marginHorizontal="24dp"
android:layout_marginTop="48dp"
android:visibility="gone" />
<include
@@ -115,8 +290,8 @@
layout="@layout/layout_user_profile_audio_content"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="13.3dp"
android:layout_marginTop="26.7dp"
android:layout_marginHorizontal="24dp"
android:layout_marginTop="48dp"
android:visibility="gone" />
<include
@@ -124,8 +299,8 @@
layout="@layout/layout_creator_community_post"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="13.3dp"
android:layout_marginTop="26.7dp"
android:layout_marginHorizontal="24dp"
android:layout_marginTop="48dp"
android:visibility="gone" />
<include
@@ -133,61 +308,26 @@
layout="@layout/layout_creator_channel_series"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="13.3dp"
android:layout_marginTop="26.7dp"
android:layout_marginHorizontal="24dp"
android:layout_marginTop="48dp"
android:visibility="gone" />
<LinearLayout
android:id="@+id/ll_user_profile_introduce"
<include
android:id="@+id/layout_user_profile_donation"
layout="@layout/layout_user_profile_donation"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="gone">
<include
android:id="@+id/layout_user_profile_introduce"
layout="@layout/layout_user_profile_introduce"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="13.3dp"
android:layout_marginTop="26.7dp" />
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginHorizontal="13.3dp"
android:layout_marginTop="26.7dp"
android:background="@color/color_88909090" />
</LinearLayout>
<LinearLayout
android:id="@+id/ll_user_profile_donation"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="26.7dp"
android:orientation="vertical"
android:visibility="gone">
<include
android:id="@+id/layout_user_profile_donation"
layout="@layout/layout_user_profile_donation"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="13.3dp" />
<View
android:layout_width="match_parent"
android:layout_height="6.7dp"
android:layout_marginTop="26.7dp"
android:background="@color/color_232323" />
</LinearLayout>
android:layout_marginHorizontal="24dp"
android:layout_marginTop="48dp"
android:visibility="gone" />
<include
android:id="@+id/layout_user_profile_fan_talk"
layout="@layout/layout_user_profile_fan_talk"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="26.7dp" />
android:layout_marginHorizontal="24dp"
android:layout_marginTop="48dp" />
</LinearLayout>
</androidx.core.widget.NestedScrollView>

View File

@@ -1,14 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="65dp"
android:layout_width="76dp"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="vertical">
<RelativeLayout
android:layout_width="65dp"
android:layout_height="65dp">
android:layout_width="76dp"
android:layout_height="76dp">
<ImageView
android:id="@+id/iv_bg"
@@ -18,8 +18,8 @@
<ImageView
android:id="@+id/iv_profile"
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_centerInParent="true"
android:contentDescription="@null"
tools:src="@mipmap/ic_launcher" />
@@ -39,7 +39,7 @@
android:layout_height="wrap_content"
android:layout_marginTop="6.7dp"
android:ellipsize="end"
android:fontFamily="@font/gmarket_sans_medium"
android:fontFamily="@font/pretendard_medium"
android:lines="1"
android:textColor="@color/color_eeeeee"
android:textSize="12sp" />

View File

@@ -8,10 +8,10 @@
android:id="@+id/tv_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:fontFamily="@font/gmarket_sans_bold"
android:fontFamily="@font/pretendard_bold"
android:text="시리즈"
android:textColor="@color/color_eeeeee"
android:textSize="18.3sp"
android:textColor="@color/white"
android:textSize="26sp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
@@ -19,10 +19,10 @@
android:id="@+id/tv_all"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:fontFamily="@font/gmarket_sans_light"
android:fontFamily="@font/pretendard_light"
android:text="전체보기"
android:textColor="@color/color_eeeeee"
android:textSize="11.3sp"
android:textColor="#78909C"
android:textSize="14sp"
app:layout_constraintBottom_toBottomOf="@+id/tv_title"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="@+id/tv_title" />
@@ -31,7 +31,7 @@
android:id="@+id/rv_series"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="13.3dp"
android:layout_marginTop="16dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tv_title" />

View File

@@ -4,10 +4,21 @@
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/tv_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:fontFamily="@font/pretendard_bold"
android:text="커뮤니티"
android:textColor="@color/white"
android:textSize="26sp" />
<HorizontalScrollView
android:id="@+id/hsv_post"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/tv_title"
android:layout_marginTop="16dp"
android:scrollbars="none">
<LinearLayout
@@ -66,6 +77,8 @@
android:id="@+id/ll_no_post"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/tv_title"
android:layout_marginTop="16dp"
android:background="@drawable/bg_round_corner_10_3_222222"
android:gravity="center"
android:orientation="vertical"

View File

@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
@@ -24,33 +25,83 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_centerVertical="true"
android:fontFamily="@font/pretendard_light"
android:gravity="center"
android:text="전체보기"
android:textColor="@color/color_bbbbbb"
android:textSize="11.3sp" />
android:textColor="#78909C"
android:textSize="14sp" />
</RelativeLayout>
<TextView
android:id="@+id/tv_new_content"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="21.3dp"
android:background="@drawable/bg_round_corner_4_7_3bb9f1"
android:layout_marginTop="24dp"
android:background="@drawable/bg_round_corner_12_3bb9f1"
android:fontFamily="@font/pretendard_bold"
android:gravity="center"
android:paddingVertical="17dp"
android:text="새로운 콘텐츠 등록하기"
android:textColor="@color/white"
android:textSize="14.7sp"
android:textSize="16sp"
android:visibility="gone" />
<!-- 상단: 레이블(좌/우) + 슬라이더(ProgressBar) -->
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/cl_ratio"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="24dp"
android:visibility="gone">
<ProgressBar
android:id="@+id/progress_ratio"
style="@android:style/Widget.ProgressBar.Horizontal"
android:layout_width="0dp"
android:layout_height="10dp"
android:layout_marginTop="8dp"
android:clickable="false"
android:enabled="false"
android:focusable="false"
android:indeterminate="false"
android:max="100"
android:progress="0"
android:progressDrawable="@drawable/bg_gallery_progress"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tv_ratio_left" />
<TextView
android:id="@+id/tv_ratio_left"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:fontFamily="@font/pretendard_bold"
android:textColor="@color/white"
android:textSize="18sp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:text="40% 보유중" />
<TextView
android:id="@+id/tv_ratio_right"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:fontFamily="@font/pretendard_regular"
android:textColor="@color/white"
android:textSize="16sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:text="0 / 0개" />
</androidx.constraintlayout.widget.ConstraintLayout>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_audio_content"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginVertical="24dp"
android:clipToPadding="false"
android:paddingVertical="20dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tv_new_content" />

View File

@@ -8,10 +8,10 @@
android:id="@+id/tv_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:fontFamily="@font/gmarket_sans_bold"
android:fontFamily="@font/pretendard_bold"
android:text="후원랭킹"
android:textColor="@color/color_eeeeee"
android:textSize="16.7sp"
android:textColor="@color/white"
android:textSize="26sp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
@@ -19,11 +19,11 @@
android:id="@+id/tv_all"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:fontFamily="@font/gmarket_sans_light"
android:fontFamily="@font/pretendard_light"
android:gravity="center"
android:text="전체보기"
android:textColor="@color/color_bbbbbb"
android:textSize="11.3sp"
android:textColor="#78909C"
android:textSize="14sp"
app:layout_constraintBottom_toBottomOf="@+id/tv_title"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="@+id/tv_title" />
@@ -32,7 +32,7 @@
android:id="@+id/rv_donation"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="26.7dp"
android:layout_marginTop="14dp"
android:clipToPadding="false"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"

View File

@@ -7,28 +7,28 @@
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="13.3dp">
android:layout_height="wrap_content">
<TextView
android:id="@+id/tv_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:fontFamily="@font/gmarket_sans_bold"
android:fontFamily="@font/pretendard_bold"
android:text="팬 Talk"
android:textColor="@color/color_eeeeee"
android:textSize="16.7sp" />
android:textColor="@color/white"
android:textSize="26sp" />
<TextView
android:id="@+id/tv_all"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:fontFamily="@font/gmarket_sans_light"
android:layout_centerVertical="true"
android:fontFamily="@font/pretendard_light"
android:gravity="center"
android:text="전체보기"
android:textColor="@color/color_bbbbbb"
android:textSize="11.3sp" />
android:textColor="#78909C"
android:textSize="14sp" />
</RelativeLayout>
<LinearLayout
@@ -40,7 +40,6 @@
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="13.3dp"
android:layout_marginTop="20dp"
android:gravity="center_vertical">
@@ -64,18 +63,10 @@
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginHorizontal="13.3dp"
android:layout_marginTop="13.3dp"
android:background="@color/color_88909090" />
<RelativeLayout
android:id="@+id/rl_input_cheer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="13.3dp"
android:layout_marginVertical="20dp">
<EditText
@@ -107,18 +98,10 @@
</RelativeLayout>
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginHorizontal="13.3dp"
android:background="@color/color_88909090" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_cheers"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="13.3dp"
android:layout_marginTop="6.7dp"
android:clipToPadding="false"
android:scrollbars="none" />
@@ -127,11 +110,11 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginVertical="60dp"
android:fontFamily="@font/gmarket_sans_light"
android:fontFamily="@font/pretendard_light"
android:gravity="center"
android:visibility="gone"
android:text="응원이 없습니다.\n\n처음으로 응원을 해보세요!"
android:textColor="@color/color_bbbbbb"
android:textSize="13.3sp" />
android:textSize="13.3sp"
android:visibility="gone" />
</LinearLayout>
</LinearLayout>