라이브 화면 문자열 리소스화

This commit is contained in:
2025-12-01 12:20:15 +09:00
parent cc55a19e1d
commit 707dc351ba
4 changed files with 54 additions and 18 deletions

View File

@@ -123,7 +123,7 @@ class LiveFragment : BaseFragment<FragmentLiveBinding>(FragmentLiveBinding::infl
setupView() setupView()
message = "라이브를 불러오고 있습니다." message = getString(R.string.screen_live_loading)
viewModel.getLiveMain() viewModel.getLiveMain()
} }
@@ -209,7 +209,7 @@ class LiveFragment : BaseFragment<FragmentLiveBinding>(FragmentLiveBinding::infl
liveRecommendChannelAdapter.clear() liveRecommendChannelAdapter.clear()
liveReservationAdapter.clear() liveReservationAdapter.clear()
message = "라이브를 불러오고 있습니다." message = getString(R.string.screen_live_loading)
viewModel.getLiveMain() viewModel.getLiveMain()
} }
@@ -771,23 +771,23 @@ class LiveFragment : BaseFragment<FragmentLiveBinding>(FragmentLiveBinding::infl
LiveCancelDialog( LiveCancelDialog(
activity = requireActivity(), activity = requireActivity(),
layoutInflater = layoutInflater, layoutInflater = layoutInflater,
title = "예약취소", title = getString(R.string.screen_live_cancel_title),
hint = "취소사유를 입력하세요.", hint = getString(R.string.screen_live_cancel_hint),
confirmButtonTitle = "예약취소", confirmButtonTitle = getString(R.string.screen_live_cancel_confirm),
confirmButtonClick = { confirmButtonClick = {
viewModel.cancelLive(roomId, it) { viewModel.cancelLive(roomId, it) {
Toast.makeText( Toast.makeText(
requireActivity(), requireActivity(),
"예약이 취소되었습니다.", getString(R.string.screen_live_cancel_success),
Toast.LENGTH_LONG Toast.LENGTH_LONG
).show() ).show()
message = "라이브를 불러오고 있습니다." message = getString(R.string.screen_live_loading)
liveNowAdapter.clear() liveNowAdapter.clear()
liveReservationAdapter.clear() liveReservationAdapter.clear()
viewModel.getLiveMain() viewModel.getLiveMain()
} }
}, },
cancelButtonTitle = "닫기", cancelButtonTitle = getString(R.string.dialog_close),
cancelButtonClick = {} cancelButtonClick = {}
).show(screenWidth) ).show(screenWidth)
} }
@@ -795,7 +795,7 @@ class LiveFragment : BaseFragment<FragmentLiveBinding>(FragmentLiveBinding::infl
fun reservationRoom(roomId: Long) { fun reservationRoom(roomId: Long) {
viewModel.getRoomDetail(roomId) { viewModel.getRoomDetail(roomId) {
if (it.manager.id == SharedPreferenceManager.userId) { if (it.manager.id == SharedPreferenceManager.userId) {
showToast("내가 만든 라이브는 예약할 수 없습니다.") showToast(getString(R.string.screen_live_reservation_self_block))
} else { } else {
if (it.isPrivateRoom) { if (it.isPrivateRoom) {
LiveRoomPasswordDialog( LiveRoomPasswordDialog(
@@ -815,11 +815,17 @@ class LiveFragment : BaseFragment<FragmentLiveBinding>(FragmentLiveBinding::infl
LivePaymentDialog( LivePaymentDialog(
activity = requireActivity(), activity = requireActivity(),
layoutInflater = layoutInflater, layoutInflater = layoutInflater,
title = "${it.price.moneyFormat()}캔으로 예약", title = getString(
desc = "'${it.title}' 라이브에 참여하기 위해 결제합니다.", R.string.screen_live_reservation_pay_title,
confirmButtonTitle = "예약하기", it.price.moneyFormat()
),
desc = getString(
R.string.screen_live_reservation_pay_desc,
it.title
),
confirmButtonTitle = getString(R.string.screen_live_reservation_confirm),
confirmButtonClick = { processLiveReservation(roomId) }, confirmButtonClick = { processLiveReservation(roomId) },
cancelButtonTitle = "취소", cancelButtonTitle = getString(R.string.cancel),
cancelButtonClick = {} cancelButtonClick = {}
).show(screenWidth) ).show(screenWidth)
} }
@@ -924,7 +930,7 @@ class LiveFragment : BaseFragment<FragmentLiveBinding>(FragmentLiveBinding::infl
LivePaymentDialog( LivePaymentDialog(
activity = requireActivity(), activity = requireActivity(),
layoutInflater = layoutInflater, layoutInflater = layoutInflater,
title = "유료 라이브 입장", title = getString(R.string.live_paid_title),
startDateTime = if (hours >= 1) { startDateTime = if (hours >= 1) {
dateFormat.format(beginDate) dateFormat.format(beginDate)
} else { } else {
@@ -935,19 +941,19 @@ class LiveFragment : BaseFragment<FragmentLiveBinding>(FragmentLiveBinding::infl
} else { } else {
null null
}, },
desc = "${it.price}캔을 차감하고\n라이브에 입장 하시겠습니까?", desc = getString(R.string.live_paid_desc, it.price),
desc2 = if (hours >= 1) { desc2 = if (hours >= 1) {
"라이브를 시작한 지 ${hours}시간 ${mins}분이 지났습니다. 라이브에 입장 후 30분 이내에 라이브가 종료될 수도 있습니다." getString(R.string.live_paid_warning, hours, mins)
} else { } else {
null null
}, },
confirmButtonTitle = "결제 후 입장", confirmButtonTitle = getString(R.string.live_paid_confirm),
confirmButtonClick = { confirmButtonClick = {
handler.postDelayed({ handler.postDelayed({
viewModel.enterRoom(roomId, onEnterRoomSuccess) viewModel.enterRoom(roomId, onEnterRoomSuccess)
}, 300) }, 300)
}, },
cancelButtonTitle = "취소", cancelButtonTitle = getString(R.string.cancel),
cancelButtonClick = {} cancelButtonClick = {}
).show(screenWidth) ).show(screenWidth)
} }

View File

@@ -126,4 +126,14 @@
<string name="screen_message_title">Messages</string> <string name="screen_message_title">Messages</string>
<string name="screen_message_tab_text">Text</string> <string name="screen_message_tab_text">Text</string>
<string name="screen_message_tab_voice">Voice</string> <string name="screen_message_tab_voice">Voice</string>
<string name="screen_live_loading">Loading live rooms…</string>
<string name="screen_live_cancel_title">Cancel reservation</string>
<string name="screen_live_cancel_hint">Enter a reason for cancellation.</string>
<string name="screen_live_cancel_confirm">Cancel reservation</string>
<string name="screen_live_cancel_success">Reservation has been cancelled.</string>
<string name="dialog_close">Close</string>
<string name="screen_live_reservation_self_block">You cannot reserve a live you created.</string>
<string name="screen_live_reservation_pay_title">Reserve with %1$s cans</string>
<string name="screen_live_reservation_pay_desc">Pay to join the live \"%1$s\".</string>
<string name="screen_live_reservation_confirm">Reserve</string>
</resources> </resources>

View File

@@ -126,4 +126,14 @@
<string name="screen_message_title">メッセージ</string> <string name="screen_message_title">メッセージ</string>
<string name="screen_message_tab_text">テキスト</string> <string name="screen_message_tab_text">テキスト</string>
<string name="screen_message_tab_voice">ボイス</string> <string name="screen_message_tab_voice">ボイス</string>
<string name="screen_live_loading">ライブを読み込み中です。</string>
<string name="screen_live_cancel_title">予約キャンセル</string>
<string name="screen_live_cancel_hint">キャンセル理由を入力してください。</string>
<string name="screen_live_cancel_confirm">予約をキャンセル</string>
<string name="screen_live_cancel_success">予約がキャンセルされました。</string>
<string name="dialog_close">閉じる</string>
<string name="screen_live_reservation_self_block">自分が作成したライブは予約できません。</string>
<string name="screen_live_reservation_pay_title">%1$sCANで予約</string>
<string name="screen_live_reservation_pay_desc">ライブ「%1$s」に参加するために決済します。</string>
<string name="screen_live_reservation_confirm">予約する</string>
</resources> </resources>

View File

@@ -125,4 +125,14 @@
<string name="screen_message_title">메시지</string> <string name="screen_message_title">메시지</string>
<string name="screen_message_tab_text">문자</string> <string name="screen_message_tab_text">문자</string>
<string name="screen_message_tab_voice">음성</string> <string name="screen_message_tab_voice">음성</string>
<string name="screen_live_loading">라이브를 불러오고 있습니다.</string>
<string name="screen_live_cancel_title">예약취소</string>
<string name="screen_live_cancel_hint">취소사유를 입력하세요.</string>
<string name="screen_live_cancel_confirm">예약취소</string>
<string name="screen_live_cancel_success">예약이 취소되었습니다.</string>
<string name="dialog_close">닫기</string>
<string name="screen_live_reservation_self_block">내가 만든 라이브는 예약할 수 없습니다.</string>
<string name="screen_live_reservation_pay_title">%1$s캔으로 예약</string>
<string name="screen_live_reservation_pay_desc">\'%1$s\' 라이브에 참여하기 위해 결제합니다.</string>
<string name="screen_live_reservation_confirm">예약하기</string>
</resources> </resources>