라이브룸 하위 어댑터 문자열 리소스화
This commit is contained in:
@@ -1692,7 +1692,8 @@ class LiveRoomActivity : BaseActivity<ActivityLiveRoomBinding>(ActivityLiveRoomB
|
|||||||
nickname,
|
nickname,
|
||||||
message.message,
|
message.message,
|
||||||
message.can,
|
message.can,
|
||||||
message.donationMessage ?: ""
|
message.donationMessage ?: "",
|
||||||
|
isSecret = false
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
invalidateChat()
|
invalidateChat()
|
||||||
@@ -1754,7 +1755,8 @@ class LiveRoomActivity : BaseActivity<ActivityLiveRoomBinding>(ActivityLiveRoomB
|
|||||||
nickname,
|
nickname,
|
||||||
message.message,
|
message.message,
|
||||||
message.can,
|
message.can,
|
||||||
message.donationMessage ?: ""
|
message.donationMessage ?: "",
|
||||||
|
isSecret = true
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
invalidateChat()
|
invalidateChat()
|
||||||
|
|||||||
@@ -52,9 +52,12 @@ data class LiveRoomJoinChat(
|
|||||||
(binding as ItemLiveRoomJoinChatBinding).tvJoin.setTextColor(
|
(binding as ItemLiveRoomJoinChatBinding).tvJoin.setTextColor(
|
||||||
ContextCompat.getColor(context, R.color.color_eeeeee)
|
ContextCompat.getColor(context, R.color.color_eeeeee)
|
||||||
)
|
)
|
||||||
val str = "'$nickname'님이 입장하셨습니다."
|
val joinText = context.getString(R.string.screen_live_room_join, nickname)
|
||||||
val spStr = SpannableString(str)
|
val spStr = SpannableString(joinText)
|
||||||
|
val nicknameStart = joinText.indexOf(nickname).takeIf { it >= 0 }
|
||||||
|
val nicknameEnd = nicknameStart?.plus(nickname.length)
|
||||||
|
|
||||||
|
if (nicknameStart != null && nicknameEnd != null) {
|
||||||
spStr.setSpan(
|
spStr.setSpan(
|
||||||
ForegroundColorSpan(
|
ForegroundColorSpan(
|
||||||
ContextCompat.getColor(
|
ContextCompat.getColor(
|
||||||
@@ -62,17 +65,18 @@ data class LiveRoomJoinChat(
|
|||||||
R.color.color_ffdc00
|
R.color.color_ffdc00
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
str.indexOf("'") + 1,
|
nicknameStart,
|
||||||
str.indexOf("'님"),
|
nicknameEnd,
|
||||||
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
|
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
|
||||||
)
|
)
|
||||||
|
|
||||||
spStr.setSpan(
|
spStr.setSpan(
|
||||||
StyleSpan(Typeface.BOLD),
|
StyleSpan(Typeface.BOLD),
|
||||||
str.indexOf("'"),
|
nicknameStart,
|
||||||
str.indexOf("'님"),
|
nicknameEnd,
|
||||||
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
|
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
|
||||||
)
|
)
|
||||||
|
}
|
||||||
|
|
||||||
(binding as ItemLiveRoomJoinChatBinding).tvJoin.text = spStr
|
(binding as ItemLiveRoomJoinChatBinding).tvJoin.text = spStr
|
||||||
binding.root.setBackgroundResource(R.drawable.bg_round_corner_4_7_cc004462)
|
binding.root.setBackgroundResource(R.drawable.bg_round_corner_4_7_cc004462)
|
||||||
@@ -115,7 +119,8 @@ data class LiveRoomNormalChat(
|
|||||||
itemBinding.tvCreatorOrManager.setBackgroundResource(
|
itemBinding.tvCreatorOrManager.setBackgroundResource(
|
||||||
R.drawable.bg_round_corner_2_4999e3
|
R.drawable.bg_round_corner_2_4999e3
|
||||||
)
|
)
|
||||||
itemBinding.tvCreatorOrManager.text = "스탭"
|
itemBinding.tvCreatorOrManager.text =
|
||||||
|
context.getString(R.string.screen_live_room_staff_label)
|
||||||
|
|
||||||
itemBinding.ivCrown.visibility = View.VISIBLE
|
itemBinding.ivCrown.visibility = View.VISIBLE
|
||||||
itemBinding.tvCreatorOrManager.visibility = View.VISIBLE
|
itemBinding.tvCreatorOrManager.visibility = View.VISIBLE
|
||||||
@@ -179,12 +184,27 @@ data class LiveRoomDonationChat(
|
|||||||
@SerializedName("nickname") val nickname: String,
|
@SerializedName("nickname") val nickname: String,
|
||||||
@SerializedName("chat") val chat: String,
|
@SerializedName("chat") val chat: String,
|
||||||
@SerializedName("can") val can: Int,
|
@SerializedName("can") val can: Int,
|
||||||
@SerializedName("donationMessage") val donationMessage: String
|
@SerializedName("donationMessage") val donationMessage: String,
|
||||||
|
val isSecret: Boolean = false
|
||||||
) : LiveRoomChat() {
|
) : LiveRoomChat() {
|
||||||
@SuppressLint("SetTextI18n")
|
|
||||||
override fun bind(context: Context, binding: ViewBinding, onClickProfile: ((Long) -> Unit)?) {
|
override fun bind(context: Context, binding: ViewBinding, onClickProfile: ((Long) -> Unit)?) {
|
||||||
val itemBinding = binding as ItemLiveRoomChatBinding
|
val itemBinding = binding as ItemLiveRoomChatBinding
|
||||||
val spChat = SpannableString(chat)
|
val donationText = context.getString(
|
||||||
|
if (isSecret) {
|
||||||
|
R.string.screen_live_room_secret_mission_sent
|
||||||
|
} else {
|
||||||
|
R.string.screen_live_room_donation_sent
|
||||||
|
},
|
||||||
|
can.toString()
|
||||||
|
)
|
||||||
|
val spChat = SpannableString(donationText)
|
||||||
|
val unit = context.getString(R.string.screen_live_room_can_unit)
|
||||||
|
val amountStart = donationText.indexOf(can.toString()).takeIf { it >= 0 }
|
||||||
|
val amountEnd = amountStart?.let { start ->
|
||||||
|
donationText.indexOf(unit, start).takeIf { it >= 0 }?.plus(unit.length)
|
||||||
|
?: start + can.toString().length
|
||||||
|
}
|
||||||
|
if (amountStart != null && amountEnd != null) {
|
||||||
spChat.setSpan(
|
spChat.setSpan(
|
||||||
ForegroundColorSpan(
|
ForegroundColorSpan(
|
||||||
ContextCompat.getColor(
|
ContextCompat.getColor(
|
||||||
@@ -192,12 +212,15 @@ data class LiveRoomDonationChat(
|
|||||||
R.color.color_fdca2f
|
R.color.color_fdca2f
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
0,
|
amountStart,
|
||||||
chat.indexOf("캔", 0, true) + 1,
|
amountEnd,
|
||||||
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
|
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
|
||||||
)
|
)
|
||||||
|
}
|
||||||
|
|
||||||
val spNickname = SpannableString("${nickname}님이")
|
val spNickname = SpannableString(
|
||||||
|
context.getString(R.string.screen_live_room_donation_sender, nickname)
|
||||||
|
)
|
||||||
spNickname.setSpan(
|
spNickname.setSpan(
|
||||||
CustomTypefaceSpan(
|
CustomTypefaceSpan(
|
||||||
ResourcesCompat.getFont(
|
ResourcesCompat.getFont(
|
||||||
@@ -226,7 +249,10 @@ data class LiveRoomDonationChat(
|
|||||||
itemBinding.tvCreatorOrManager.visibility = View.GONE
|
itemBinding.tvCreatorOrManager.visibility = View.GONE
|
||||||
|
|
||||||
if (donationMessage.isNotBlank()) {
|
if (donationMessage.isNotBlank()) {
|
||||||
itemBinding.tvDonationMessage.text = "\"$donationMessage\""
|
itemBinding.tvDonationMessage.text = context.getString(
|
||||||
|
R.string.screen_live_room_donation_message_format,
|
||||||
|
donationMessage
|
||||||
|
)
|
||||||
itemBinding.tvDonationMessage.visibility = View.VISIBLE
|
itemBinding.tvDonationMessage.visibility = View.VISIBLE
|
||||||
} else {
|
} else {
|
||||||
itemBinding.tvDonationMessage.visibility = View.GONE
|
itemBinding.tvDonationMessage.visibility = View.GONE
|
||||||
@@ -235,7 +261,7 @@ data class LiveRoomDonationChat(
|
|||||||
itemBinding.llMessageBg.setPadding(0)
|
itemBinding.llMessageBg.setPadding(0)
|
||||||
itemBinding.llMessageBg.background = null
|
itemBinding.llMessageBg.background = null
|
||||||
|
|
||||||
if (spChat.contains("비밀")) {
|
if (isSecret) {
|
||||||
itemBinding.root.setBackgroundResource(R.drawable.bg_round_corner_6_7_cc59548f)
|
itemBinding.root.setBackgroundResource(R.drawable.bg_round_corner_6_7_cc59548f)
|
||||||
} else {
|
} else {
|
||||||
itemBinding.root.setBackgroundResource(
|
itemBinding.root.setBackgroundResource(
|
||||||
@@ -282,7 +308,10 @@ data class LiveRoomRouletteDonationChat(
|
|||||||
) : LiveRoomChat() {
|
) : LiveRoomChat() {
|
||||||
override fun bind(context: Context, binding: ViewBinding, onClickProfile: ((Long) -> Unit)?) {
|
override fun bind(context: Context, binding: ViewBinding, onClickProfile: ((Long) -> Unit)?) {
|
||||||
val itemBinding = binding as ItemLiveRoomChatBinding
|
val itemBinding = binding as ItemLiveRoomChatBinding
|
||||||
val chat = "[$rouletteResult] 당첨!"
|
val chat = context.getString(
|
||||||
|
R.string.screen_live_room_roulette_win,
|
||||||
|
rouletteResult
|
||||||
|
)
|
||||||
val spChat = SpannableString(chat)
|
val spChat = SpannableString(chat)
|
||||||
spChat.setSpan(
|
spChat.setSpan(
|
||||||
ForegroundColorSpan(
|
ForegroundColorSpan(
|
||||||
@@ -296,7 +325,12 @@ data class LiveRoomRouletteDonationChat(
|
|||||||
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
|
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
|
||||||
)
|
)
|
||||||
|
|
||||||
val spNickname = SpannableString("${nickname}님의 룰렛 결과?")
|
val spNickname = SpannableString(
|
||||||
|
context.getString(
|
||||||
|
R.string.screen_live_room_roulette_sender,
|
||||||
|
nickname
|
||||||
|
)
|
||||||
|
)
|
||||||
spNickname.setSpan(
|
spNickname.setSpan(
|
||||||
StyleSpan(Typeface.NORMAL),
|
StyleSpan(Typeface.NORMAL),
|
||||||
0,
|
0,
|
||||||
|
|||||||
@@ -59,13 +59,13 @@ class LiveRoomDonationDialog(
|
|||||||
if (isSecret && can < 10) {
|
if (isSecret && can < 10) {
|
||||||
Toast.makeText(
|
Toast.makeText(
|
||||||
activity,
|
activity,
|
||||||
"비밀 미션은 최소 10캔 이상부터 이용이 가능합니다.",
|
activity.getString(R.string.screen_live_room_secret_mission_minimum),
|
||||||
Toast.LENGTH_LONG
|
Toast.LENGTH_LONG
|
||||||
).show()
|
).show()
|
||||||
} else if (can < 1) {
|
} else if (can < 1) {
|
||||||
Toast.makeText(
|
Toast.makeText(
|
||||||
activity,
|
activity,
|
||||||
"1캔 이상 후원하실 수 있습니다.",
|
activity.getString(R.string.screen_live_room_donation_minimum),
|
||||||
Toast.LENGTH_LONG
|
Toast.LENGTH_LONG
|
||||||
).show()
|
).show()
|
||||||
} else {
|
} else {
|
||||||
@@ -79,7 +79,7 @@ class LiveRoomDonationDialog(
|
|||||||
} else {
|
} else {
|
||||||
Toast.makeText(
|
Toast.makeText(
|
||||||
activity,
|
activity,
|
||||||
"1캔 이상 후원하실 수 있습니다.",
|
activity.getString(R.string.screen_live_room_donation_minimum),
|
||||||
Toast.LENGTH_LONG
|
Toast.LENGTH_LONG
|
||||||
).show()
|
).show()
|
||||||
}
|
}
|
||||||
@@ -87,7 +87,7 @@ class LiveRoomDonationDialog(
|
|||||||
} catch (e: NumberFormatException) {
|
} catch (e: NumberFormatException) {
|
||||||
Toast.makeText(
|
Toast.makeText(
|
||||||
activity,
|
activity,
|
||||||
"1캔 이상 후원하실 수 있습니다.",
|
activity.getString(R.string.screen_live_room_donation_minimum),
|
||||||
Toast.LENGTH_LONG
|
Toast.LENGTH_LONG
|
||||||
).show()
|
).show()
|
||||||
}
|
}
|
||||||
@@ -99,14 +99,14 @@ class LiveRoomDonationDialog(
|
|||||||
val isSelected = dialogView.tvSecret.isSelected
|
val isSelected = dialogView.tvSecret.isSelected
|
||||||
dialogView.tvSecret.isSelected = !isSelected
|
dialogView.tvSecret.isSelected = !isSelected
|
||||||
dialogView.etDonationMessage.hint = if (!isSelected) {
|
dialogView.etDonationMessage.hint = if (!isSelected) {
|
||||||
"비밀 미션을 입력하세요(최대 1000자)"
|
activity.getString(R.string.screen_live_room_secret_mission_hint)
|
||||||
} else {
|
} else {
|
||||||
"함께 보낼 메시지 입력(최대 1000자)"
|
activity.getString(R.string.screen_live_room_donation_message_hint)
|
||||||
}
|
}
|
||||||
dialogView.etDonationCan.hint = if (!isSelected) {
|
dialogView.etDonationCan.hint = if (!isSelected) {
|
||||||
"10캔 이상 입력하세요"
|
activity.getString(R.string.screen_live_room_secret_mission_input_min)
|
||||||
} else {
|
} else {
|
||||||
"1캔 이상 입력하세요"
|
activity.getString(R.string.screen_live_room_donation_input_min)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
dialogView.tvSecret.isSelected = false
|
dialogView.tvSecret.isSelected = false
|
||||||
|
|||||||
@@ -26,7 +26,10 @@ class LiveRoomDonationMessageAdapter(
|
|||||||
@SuppressLint("SetTextI18n")
|
@SuppressLint("SetTextI18n")
|
||||||
fun bind(item: LiveRoomDonationMessage) {
|
fun bind(item: LiveRoomDonationMessage) {
|
||||||
if (item.canMessage.isNotBlank()) {
|
if (item.canMessage.isNotBlank()) {
|
||||||
binding.tvNickname.text = "${item.nickname}님이"
|
binding.tvNickname.text = binding.root.context.getString(
|
||||||
|
R.string.screen_live_room_donation_sender,
|
||||||
|
item.nickname
|
||||||
|
)
|
||||||
binding.tvCanMessage.text = item.canMessage
|
binding.tvCanMessage.text = item.canMessage
|
||||||
binding.tvCanMessage.visibility = View.VISIBLE
|
binding.tvCanMessage.visibility = View.VISIBLE
|
||||||
binding.root.setBackgroundResource(
|
binding.root.setBackgroundResource(
|
||||||
@@ -37,11 +40,17 @@ class LiveRoomDonationMessageAdapter(
|
|||||||
}
|
}
|
||||||
)
|
)
|
||||||
} else {
|
} else {
|
||||||
binding.tvNickname.text = "${item.nickname}님의 룰렛 결과?"
|
binding.tvNickname.text = binding.root.context.getString(
|
||||||
|
R.string.screen_live_room_roulette_sender,
|
||||||
|
item.nickname
|
||||||
|
)
|
||||||
binding.tvCanMessage.visibility = View.GONE
|
binding.tvCanMessage.visibility = View.GONE
|
||||||
binding.root.setBackgroundResource(R.drawable.bg_round_corner_5_3_ccc25264)
|
binding.root.setBackgroundResource(R.drawable.bg_round_corner_5_3_ccc25264)
|
||||||
}
|
}
|
||||||
binding.tvDonationMessage.text = "\"${item.donationMessage}\""
|
binding.tvDonationMessage.text = binding.root.context.getString(
|
||||||
|
R.string.screen_live_room_donation_message_format,
|
||||||
|
item.donationMessage
|
||||||
|
)
|
||||||
|
|
||||||
if (
|
if (
|
||||||
creatorId == SharedPreferenceManager.userId &&
|
creatorId == SharedPreferenceManager.userId &&
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import android.view.LayoutInflater
|
|||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
import androidx.recyclerview.widget.RecyclerView
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
import androidx.viewbinding.ViewBinding
|
import androidx.viewbinding.ViewBinding
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.databinding.ItemLiveRoomListProfileBinding
|
import kr.co.vividnext.sodalive.databinding.ItemLiveRoomListProfileBinding
|
||||||
import kr.co.vividnext.sodalive.databinding.ItemLiveRoomProfileHeaderBinding
|
import kr.co.vividnext.sodalive.databinding.ItemLiveRoomProfileHeaderBinding
|
||||||
import kr.co.vividnext.sodalive.databinding.ItemLiveRoomProfileManagerBinding
|
import kr.co.vividnext.sodalive.databinding.ItemLiveRoomProfileManagerBinding
|
||||||
@@ -55,7 +56,7 @@ class LiveRoomProfileAdapter(
|
|||||||
items.add(
|
items.add(
|
||||||
1,
|
1,
|
||||||
LiveRoomProfileItemSpeakerTitle(
|
LiveRoomProfileItemSpeakerTitle(
|
||||||
"스피커",
|
R.string.screen_live_room_speaker_label,
|
||||||
speakerCount = speakers.size - 1,
|
speakerCount = speakers.size - 1,
|
||||||
totalUserCount = totalUserCount
|
totalUserCount = totalUserCount
|
||||||
)
|
)
|
||||||
@@ -64,7 +65,7 @@ class LiveRoomProfileAdapter(
|
|||||||
items.add(
|
items.add(
|
||||||
1,
|
1,
|
||||||
LiveRoomProfileItemManagerTitle(
|
LiveRoomProfileItemManagerTitle(
|
||||||
"스탭",
|
R.string.screen_live_room_staff_label,
|
||||||
managerCount = managers.size
|
managerCount = managers.size
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -79,7 +80,11 @@ class LiveRoomProfileAdapter(
|
|||||||
items.add(index = index + 2, item)
|
items.add(index = index + 2, item)
|
||||||
}
|
}
|
||||||
|
|
||||||
items.add(LiveRoomProfileItemListenerTitle("리스너"))
|
items.add(
|
||||||
|
LiveRoomProfileItemListenerTitle(
|
||||||
|
R.string.screen_live_room_listener_label
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
listeners.forEach {
|
listeners.forEach {
|
||||||
val item = LiveRoomProfileItemUser(
|
val item = LiveRoomProfileItemUser(
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package kr.co.vividnext.sodalive.live.room.profile
|
|||||||
|
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import androidx.annotation.Keep
|
import androidx.annotation.Keep
|
||||||
|
import androidx.annotation.StringRes
|
||||||
import androidx.recyclerview.widget.RecyclerView
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
import androidx.viewbinding.ViewBinding
|
import androidx.viewbinding.ViewBinding
|
||||||
import coil.load
|
import coil.load
|
||||||
@@ -51,14 +52,14 @@ abstract class LiveRoomProfileItem {
|
|||||||
|
|
||||||
@Keep
|
@Keep
|
||||||
data class LiveRoomProfileItemSpeakerTitle(
|
data class LiveRoomProfileItemSpeakerTitle(
|
||||||
val title: String,
|
@StringRes val titleResId: Int,
|
||||||
val speakerCount: Int,
|
val speakerCount: Int,
|
||||||
val totalUserCount: Int
|
val totalUserCount: Int
|
||||||
) : LiveRoomProfileItem() {
|
) : LiveRoomProfileItem() {
|
||||||
override var type = LiveRoomProfileItemType.SPEAKER_TITLE
|
override var type = LiveRoomProfileItemType.SPEAKER_TITLE
|
||||||
override fun bind(binding: ViewBinding) {
|
override fun bind(binding: ViewBinding) {
|
||||||
val itemBinding = binding as ItemLiveRoomProfileHeaderBinding
|
val itemBinding = binding as ItemLiveRoomProfileHeaderBinding
|
||||||
itemBinding.tvTitle.text = title
|
itemBinding.tvTitle.setText(titleResId)
|
||||||
itemBinding.tvSpeakerCount.text = "$speakerCount"
|
itemBinding.tvSpeakerCount.text = "$speakerCount"
|
||||||
itemBinding.tvSpeakerTotalCount.text = if (totalUserCount > 5) {
|
itemBinding.tvSpeakerTotalCount.text = if (totalUserCount > 5) {
|
||||||
"/5"
|
"/5"
|
||||||
@@ -77,12 +78,12 @@ data class LiveRoomProfileItemSpeakerTitle(
|
|||||||
|
|
||||||
@Keep
|
@Keep
|
||||||
data class LiveRoomProfileItemListenerTitle(
|
data class LiveRoomProfileItemListenerTitle(
|
||||||
val title: String
|
@StringRes val titleResId: Int
|
||||||
) : LiveRoomProfileItem() {
|
) : LiveRoomProfileItem() {
|
||||||
override var type = LiveRoomProfileItemType.LISTENER_TITLE
|
override var type = LiveRoomProfileItemType.LISTENER_TITLE
|
||||||
override fun bind(binding: ViewBinding) {
|
override fun bind(binding: ViewBinding) {
|
||||||
val itemBinding = binding as ItemLiveRoomProfileHeaderBinding
|
val itemBinding = binding as ItemLiveRoomProfileHeaderBinding
|
||||||
itemBinding.tvTitle.text = title
|
itemBinding.tvTitle.setText(titleResId)
|
||||||
itemBinding.tvSpeakerCount.visibility = View.GONE
|
itemBinding.tvSpeakerCount.visibility = View.GONE
|
||||||
itemBinding.tvSpeakerTotalCount.visibility = View.GONE
|
itemBinding.tvSpeakerTotalCount.visibility = View.GONE
|
||||||
|
|
||||||
@@ -95,13 +96,13 @@ data class LiveRoomProfileItemListenerTitle(
|
|||||||
|
|
||||||
@Keep
|
@Keep
|
||||||
data class LiveRoomProfileItemManagerTitle(
|
data class LiveRoomProfileItemManagerTitle(
|
||||||
val title: String,
|
@StringRes val titleResId: Int,
|
||||||
val managerCount: Int
|
val managerCount: Int
|
||||||
) : LiveRoomProfileItem() {
|
) : LiveRoomProfileItem() {
|
||||||
override var type = LiveRoomProfileItemType.MANAGER_TITLE
|
override var type = LiveRoomProfileItemType.MANAGER_TITLE
|
||||||
override fun bind(binding: ViewBinding) {
|
override fun bind(binding: ViewBinding) {
|
||||||
val itemBinding = binding as ItemLiveRoomProfileHeaderBinding
|
val itemBinding = binding as ItemLiveRoomProfileHeaderBinding
|
||||||
itemBinding.tvTitle.text = title
|
itemBinding.tvTitle.setText(titleResId)
|
||||||
itemBinding.tvSpeakerCount.text = "$managerCount"
|
itemBinding.tvSpeakerCount.text = "$managerCount"
|
||||||
itemBinding.tvSpeakerCount.visibility = View.VISIBLE
|
itemBinding.tvSpeakerCount.visibility = View.VISIBLE
|
||||||
itemBinding.tvSpeakerTotalCount.visibility = View.GONE
|
itemBinding.tvSpeakerTotalCount.visibility = View.GONE
|
||||||
|
|||||||
@@ -99,13 +99,17 @@ class LiveRoomUserProfileDialog(
|
|||||||
dialogView.tvInviteSpeaker.visibility = View.VISIBLE
|
dialogView.tvInviteSpeaker.visibility = View.VISIBLE
|
||||||
|
|
||||||
if (userProfile.isSpeaker) {
|
if (userProfile.isSpeaker) {
|
||||||
dialogView.tvInviteSpeaker.text = "리스너 변경"
|
dialogView.tvInviteSpeaker.setText(
|
||||||
|
R.string.screen_live_room_change_to_listener
|
||||||
|
)
|
||||||
dialogView.tvInviteSpeaker.setOnClickListener {
|
dialogView.tvInviteSpeaker.setOnClickListener {
|
||||||
onClickChangeListener(userProfile.userId)
|
onClickChangeListener(userProfile.userId)
|
||||||
alertDialog.dismiss()
|
alertDialog.dismiss()
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
dialogView.tvInviteSpeaker.text = "스피커 초대"
|
dialogView.tvInviteSpeaker.setText(
|
||||||
|
R.string.screen_live_room_invite_speaker
|
||||||
|
)
|
||||||
dialogView.tvInviteSpeaker.setOnClickListener {
|
dialogView.tvInviteSpeaker.setOnClickListener {
|
||||||
onClickInviteSpeaker(userProfile.userId)
|
onClickInviteSpeaker(userProfile.userId)
|
||||||
alertDialog.dismiss()
|
alertDialog.dismiss()
|
||||||
@@ -121,13 +125,13 @@ class LiveRoomUserProfileDialog(
|
|||||||
dialogView.tvNoChatting.visibility = View.VISIBLE
|
dialogView.tvNoChatting.visibility = View.VISIBLE
|
||||||
|
|
||||||
if (userProfile.isManager) {
|
if (userProfile.isManager) {
|
||||||
dialogView.tvSetManager.text = "스탭 해제"
|
dialogView.tvSetManager.setText(R.string.screen_live_room_unset_manager)
|
||||||
dialogView.tvSetManager.setOnClickListener {
|
dialogView.tvSetManager.setOnClickListener {
|
||||||
onClickReleaseManager(userProfile.userId)
|
onClickReleaseManager(userProfile.userId)
|
||||||
alertDialog.dismiss()
|
alertDialog.dismiss()
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
dialogView.tvSetManager.text = "스탭 지정"
|
dialogView.tvSetManager.setText(R.string.screen_live_room_set_manager)
|
||||||
dialogView.tvSetManager.setOnClickListener {
|
dialogView.tvSetManager.setOnClickListener {
|
||||||
onClickSetManager(userProfile.userId)
|
onClickSetManager(userProfile.userId)
|
||||||
alertDialog.dismiss()
|
alertDialog.dismiss()
|
||||||
|
|||||||
@@ -102,7 +102,7 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:fontFamily="@font/gmarket_sans_medium"
|
android:fontFamily="@font/gmarket_sans_medium"
|
||||||
android:gravity="end"
|
android:gravity="end"
|
||||||
android:text="캔"
|
android:text="@string/screen_live_room_can_unit"
|
||||||
android:textColor="@color/color_eeeeee"
|
android:textColor="@color/color_eeeeee"
|
||||||
android:textSize="10.7sp"
|
android:textSize="10.7sp"
|
||||||
tools:ignore="SmallSp" />
|
tools:ignore="SmallSp" />
|
||||||
@@ -124,7 +124,7 @@
|
|||||||
android:gravity="end"
|
android:gravity="end"
|
||||||
android:paddingHorizontal="3.33dp"
|
android:paddingHorizontal="3.33dp"
|
||||||
android:paddingVertical="2.67dp"
|
android:paddingVertical="2.67dp"
|
||||||
android:text="비밀"
|
android:text="@string/screen_live_room_secret_label"
|
||||||
android:textColor="@color/color_111111"
|
android:textColor="@color/color_111111"
|
||||||
android:textSize="12sp"
|
android:textSize="12sp"
|
||||||
tools:ignore="SmallSp" />
|
tools:ignore="SmallSp" />
|
||||||
@@ -145,7 +145,7 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:fontFamily="@font/gmarket_sans_medium"
|
android:fontFamily="@font/gmarket_sans_medium"
|
||||||
android:gravity="end"
|
android:gravity="end"
|
||||||
android:text="캔"
|
android:text="@string/screen_live_room_can_unit"
|
||||||
android:textColor="@color/color_eeeeee"
|
android:textColor="@color/color_eeeeee"
|
||||||
android:textSize="10.7sp"
|
android:textSize="10.7sp"
|
||||||
tools:ignore="SmallSp" />
|
tools:ignore="SmallSp" />
|
||||||
|
|||||||
@@ -98,7 +98,7 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:fontFamily="@font/gmarket_sans_medium"
|
android:fontFamily="@font/gmarket_sans_medium"
|
||||||
android:gravity="end"
|
android:gravity="end"
|
||||||
android:text="하트"
|
android:text="@string/screen_live_room_heart_label"
|
||||||
android:textColor="@color/color_eeeeee"
|
android:textColor="@color/color_eeeeee"
|
||||||
android:textSize="10.7sp"
|
android:textSize="10.7sp"
|
||||||
tools:ignore="SmallSp" />
|
tools:ignore="SmallSp" />
|
||||||
|
|||||||
@@ -49,7 +49,7 @@
|
|||||||
android:fontFamily="@font/gmarket_sans_medium"
|
android:fontFamily="@font/gmarket_sans_medium"
|
||||||
android:paddingHorizontal="5.5dp"
|
android:paddingHorizontal="5.5dp"
|
||||||
android:paddingVertical="12dp"
|
android:paddingVertical="12dp"
|
||||||
android:text="리스너로 변경"
|
android:text="@string/screen_live_room_change_to_listener"
|
||||||
android:textColor="@color/white"
|
android:textColor="@color/white"
|
||||||
android:textSize="10sp"
|
android:textSize="10sp"
|
||||||
android:visibility="gone"
|
android:visibility="gone"
|
||||||
@@ -63,7 +63,7 @@
|
|||||||
android:fontFamily="@font/gmarket_sans_medium"
|
android:fontFamily="@font/gmarket_sans_medium"
|
||||||
android:paddingHorizontal="5.5dp"
|
android:paddingHorizontal="5.5dp"
|
||||||
android:paddingVertical="12dp"
|
android:paddingVertical="12dp"
|
||||||
android:text="스피커로 초대"
|
android:text="@string/screen_live_room_invite_speaker"
|
||||||
android:textColor="@color/white"
|
android:textColor="@color/white"
|
||||||
android:textSize="10sp"
|
android:textSize="10sp"
|
||||||
android:visibility="gone"
|
android:visibility="gone"
|
||||||
@@ -78,7 +78,7 @@
|
|||||||
android:fontFamily="@font/gmarket_sans_medium"
|
android:fontFamily="@font/gmarket_sans_medium"
|
||||||
android:paddingHorizontal="5.5dp"
|
android:paddingHorizontal="5.5dp"
|
||||||
android:paddingVertical="12dp"
|
android:paddingVertical="12dp"
|
||||||
android:text="채금"
|
android:text="@string/screen_live_room_chat_ban_short"
|
||||||
android:textColor="@color/white"
|
android:textColor="@color/white"
|
||||||
android:textSize="10sp"
|
android:textSize="10sp"
|
||||||
android:visibility="gone"
|
android:visibility="gone"
|
||||||
|
|||||||
@@ -394,6 +394,26 @@
|
|||||||
<string name="screen_live_room_participants">Participants</string>
|
<string name="screen_live_room_participants">Participants</string>
|
||||||
<string name="screen_live_room_new_chat">New chat</string>
|
<string name="screen_live_room_new_chat">New chat</string>
|
||||||
<string name="screen_live_room_chat_hint">Enter a message</string>
|
<string name="screen_live_room_chat_hint">Enter a message</string>
|
||||||
|
<string name="screen_live_room_join">%1$s joined.</string>
|
||||||
|
<string name="screen_live_room_staff_label">Staff</string>
|
||||||
|
<string name="screen_live_room_can_unit">cans</string>
|
||||||
|
<string name="screen_live_room_donation_message_format">"%1$s"</string>
|
||||||
|
<string name="screen_live_room_donation_sender">%1$s</string>
|
||||||
|
<string name="screen_live_room_roulette_sender">%1$s\u2019s roulette result?</string>
|
||||||
|
<string name="screen_live_room_roulette_win">[%1$s] Win!</string>
|
||||||
|
<string name="screen_live_room_heart_label">Hearts</string>
|
||||||
|
<string name="screen_live_room_secret_label">Secret</string>
|
||||||
|
<string name="screen_live_room_change_to_listener">Change to listener</string>
|
||||||
|
<string name="screen_live_room_invite_speaker">Invite to speaker</string>
|
||||||
|
<string name="screen_live_room_chat_ban_short">Mute</string>
|
||||||
|
<string name="screen_live_room_set_manager">Set as staff</string>
|
||||||
|
<string name="screen_live_room_unset_manager">Remove staff</string>
|
||||||
|
<string name="screen_live_room_speaker_label">Speaker</string>
|
||||||
|
<string name="screen_live_room_listener_label">Listener</string>
|
||||||
|
<string name="screen_live_room_secret_mission_hint">Enter a secret mission (up to 1000 chars)</string>
|
||||||
|
<string name="screen_live_room_donation_message_hint">Enter a message to send (up to 1000 chars)</string>
|
||||||
|
<string name="screen_live_room_secret_mission_input_min">Enter 10 or more cans</string>
|
||||||
|
<string name="screen_live_room_donation_input_min">Enter at least 1 can</string>
|
||||||
<string name="screen_my_notice_more">Details</string>
|
<string name="screen_my_notice_more">Details</string>
|
||||||
<string name="screen_my_login">Login</string>
|
<string name="screen_my_login">Login</string>
|
||||||
<string name="screen_my_edit_profile">Edit profile</string>
|
<string name="screen_my_edit_profile">Edit profile</string>
|
||||||
|
|||||||
@@ -394,6 +394,26 @@
|
|||||||
<string name="screen_live_room_participants">参加者</string>
|
<string name="screen_live_room_participants">参加者</string>
|
||||||
<string name="screen_live_room_new_chat">新しいチャット</string>
|
<string name="screen_live_room_new_chat">新しいチャット</string>
|
||||||
<string name="screen_live_room_chat_hint">チャットを入力してください</string>
|
<string name="screen_live_room_chat_hint">チャットを入力してください</string>
|
||||||
|
<string name="screen_live_room_join">%1$sさんが入場しました。</string>
|
||||||
|
<string name="screen_live_room_staff_label">スタッフ</string>
|
||||||
|
<string name="screen_live_room_can_unit">CAN</string>
|
||||||
|
<string name="screen_live_room_donation_message_format">"%1$s"</string>
|
||||||
|
<string name="screen_live_room_donation_sender">%1$sさんが</string>
|
||||||
|
<string name="screen_live_room_roulette_sender">%1$sさんのルーレット結果?</string>
|
||||||
|
<string name="screen_live_room_roulette_win">[%1$s] 当選!</string>
|
||||||
|
<string name="screen_live_room_heart_label">ハート</string>
|
||||||
|
<string name="screen_live_room_secret_label">シークレット</string>
|
||||||
|
<string name="screen_live_room_change_to_listener">リスナーに変更</string>
|
||||||
|
<string name="screen_live_room_invite_speaker">スピーカー招待</string>
|
||||||
|
<string name="screen_live_room_chat_ban_short">チャ禁</string>
|
||||||
|
<string name="screen_live_room_set_manager">スタッフに設定</string>
|
||||||
|
<string name="screen_live_room_unset_manager">スタッフ解除</string>
|
||||||
|
<string name="screen_live_room_speaker_label">スピーカー</string>
|
||||||
|
<string name="screen_live_room_listener_label">リスナー</string>
|
||||||
|
<string name="screen_live_room_secret_mission_hint">シークレットミッションを入力(最大1000文字)</string>
|
||||||
|
<string name="screen_live_room_donation_message_hint">一緒に送るメッセージを入力(最大1000文字)</string>
|
||||||
|
<string name="screen_live_room_secret_mission_input_min">10CAN以上を入力してください</string>
|
||||||
|
<string name="screen_live_room_donation_input_min">1CAN以上を入力してください</string>
|
||||||
<string name="screen_my_notice_more">詳細</string>
|
<string name="screen_my_notice_more">詳細</string>
|
||||||
<string name="screen_my_login">ログイン</string>
|
<string name="screen_my_login">ログイン</string>
|
||||||
<string name="screen_my_edit_profile">プロフィール編集</string>
|
<string name="screen_my_edit_profile">プロフィール編集</string>
|
||||||
|
|||||||
@@ -393,6 +393,26 @@
|
|||||||
<string name="screen_live_room_participants">참여자</string>
|
<string name="screen_live_room_participants">참여자</string>
|
||||||
<string name="screen_live_room_new_chat">새로운 채팅</string>
|
<string name="screen_live_room_new_chat">새로운 채팅</string>
|
||||||
<string name="screen_live_room_chat_hint">채팅을 입력하세요</string>
|
<string name="screen_live_room_chat_hint">채팅을 입력하세요</string>
|
||||||
|
<string name="screen_live_room_join">%1$s님이 입장하셨습니다.</string>
|
||||||
|
<string name="screen_live_room_staff_label">스탭</string>
|
||||||
|
<string name="screen_live_room_can_unit">캔</string>
|
||||||
|
<string name="screen_live_room_donation_message_format">"%1$s"</string>
|
||||||
|
<string name="screen_live_room_donation_sender">%1$s님이</string>
|
||||||
|
<string name="screen_live_room_roulette_sender">%1$s님의 룰렛 결과?</string>
|
||||||
|
<string name="screen_live_room_roulette_win">[%1$s] 당첨!</string>
|
||||||
|
<string name="screen_live_room_heart_label">하트</string>
|
||||||
|
<string name="screen_live_room_secret_label">비밀</string>
|
||||||
|
<string name="screen_live_room_change_to_listener">리스너로 변경</string>
|
||||||
|
<string name="screen_live_room_invite_speaker">스피커로 초대</string>
|
||||||
|
<string name="screen_live_room_chat_ban_short">채금</string>
|
||||||
|
<string name="screen_live_room_set_manager">스탭 지정</string>
|
||||||
|
<string name="screen_live_room_unset_manager">스탭 해제</string>
|
||||||
|
<string name="screen_live_room_speaker_label">스피커</string>
|
||||||
|
<string name="screen_live_room_listener_label">리스너</string>
|
||||||
|
<string name="screen_live_room_secret_mission_hint">비밀 미션을 입력하세요(최대 1000자)</string>
|
||||||
|
<string name="screen_live_room_donation_message_hint">함께 보낼 메시지 입력(최대 1000자)</string>
|
||||||
|
<string name="screen_live_room_secret_mission_input_min">10캔 이상 입력하세요</string>
|
||||||
|
<string name="screen_live_room_donation_input_min">1캔 이상 입력하세요</string>
|
||||||
<string name="screen_my_notice_more">자세히</string>
|
<string name="screen_my_notice_more">자세히</string>
|
||||||
<string name="screen_my_login">LOGIN</string>
|
<string name="screen_my_login">LOGIN</string>
|
||||||
<string name="screen_my_edit_profile">프로필 수정</string>
|
<string name="screen_my_edit_profile">프로필 수정</string>
|
||||||
|
|||||||
Reference in New Issue
Block a user