feat(user-channel): 유저 채널 UI 수정
- 최신 콘텐츠 아이템 표시 - 후원 순위 아이템 사이즈 수정 - 섹션 제목 사이즈 업
This commit is contained in:
@@ -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()
|
||||
|
||||
@@ -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>
|
||||
|
||||
|
||||
@@ -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" />
|
||||
|
||||
@@ -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" />
|
||||
|
||||
@@ -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"
|
||||
|
||||
@@ -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" />
|
||||
|
||||
@@ -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"
|
||||
|
||||
@@ -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>
|
||||
|
||||
Reference in New Issue
Block a user