fix(ui): 홈/메인 문자열 리소스화 및 영·일 번역 추가
This commit is contained in:
@@ -8,7 +8,6 @@ import android.widget.Toast
|
|||||||
import androidx.recyclerview.widget.GridLayoutManager
|
import androidx.recyclerview.widget.GridLayoutManager
|
||||||
import androidx.recyclerview.widget.LinearLayoutManager
|
import androidx.recyclerview.widget.LinearLayoutManager
|
||||||
import androidx.recyclerview.widget.RecyclerView
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
import kr.co.vividnext.sodalive.audio_content.series.SeriesListAdapter
|
|
||||||
import kr.co.vividnext.sodalive.audio_content.series.detail.SeriesDetailActivity
|
import kr.co.vividnext.sodalive.audio_content.series.detail.SeriesDetailActivity
|
||||||
import kr.co.vividnext.sodalive.base.BaseFragment
|
import kr.co.vividnext.sodalive.base.BaseFragment
|
||||||
import kr.co.vividnext.sodalive.common.Constants
|
import kr.co.vividnext.sodalive.common.Constants
|
||||||
@@ -61,7 +60,7 @@ class SeriesMainDayOfWeekFragment : BaseFragment<FragmentSeriesMainDayOfWeekBind
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun setupDayOfWeekDay() {
|
private fun setupDayOfWeekDay() {
|
||||||
val dayOfWeekAdapter = DayOfWeekAdapter(screenWidth = screenWidth) {
|
val dayOfWeekAdapter = DayOfWeekAdapter(requireContext()) {
|
||||||
adapter.clear()
|
adapter.clear()
|
||||||
viewModel.dayOfWeek = it
|
viewModel.dayOfWeek = it
|
||||||
}
|
}
|
||||||
@@ -73,7 +72,7 @@ class SeriesMainDayOfWeekFragment : BaseFragment<FragmentSeriesMainDayOfWeekBind
|
|||||||
false
|
false
|
||||||
) {
|
) {
|
||||||
override fun canScrollVertically() = false
|
override fun canScrollVertically() = false
|
||||||
override fun canScrollHorizontally() = false
|
override fun canScrollHorizontally() = true
|
||||||
}
|
}
|
||||||
rvDayOfWeek.layoutManager = layoutManager
|
rvDayOfWeek.layoutManager = layoutManager
|
||||||
|
|
||||||
|
|||||||
@@ -1,14 +1,16 @@
|
|||||||
package kr.co.vividnext.sodalive.home
|
package kr.co.vividnext.sodalive.home
|
||||||
|
|
||||||
import android.annotation.SuppressLint
|
import android.annotation.SuppressLint
|
||||||
|
import android.content.Context
|
||||||
import android.view.LayoutInflater
|
import android.view.LayoutInflater
|
||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
import androidx.recyclerview.widget.RecyclerView
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.databinding.ItemDayOfWeekBinding
|
import kr.co.vividnext.sodalive.databinding.ItemDayOfWeekBinding
|
||||||
import java.util.Calendar
|
import java.util.Calendar
|
||||||
|
|
||||||
class DayOfWeekAdapter(
|
class DayOfWeekAdapter(
|
||||||
private val screenWidth: Int,
|
private val context: Context,
|
||||||
private val onClickItem: (SeriesPublishedDaysOfWeek) -> Unit,
|
private val onClickItem: (SeriesPublishedDaysOfWeek) -> Unit,
|
||||||
) : RecyclerView.Adapter<DayOfWeekAdapter.ViewHolder>() {
|
) : RecyclerView.Adapter<DayOfWeekAdapter.ViewHolder>() {
|
||||||
|
|
||||||
@@ -20,17 +22,6 @@ class DayOfWeekAdapter(
|
|||||||
binding.tvDayOfWeek.text = dayOfWeek.dayOfWeekStr
|
binding.tvDayOfWeek.text = dayOfWeek.dayOfWeekStr
|
||||||
binding.tvDayOfWeek.isSelected = dayOfWeek.dayOfWeek == selectedDayOfWeek
|
binding.tvDayOfWeek.isSelected = dayOfWeek.dayOfWeek == selectedDayOfWeek
|
||||||
|
|
||||||
val lp = binding.tvDayOfWeek.layoutParams
|
|
||||||
lp.height = screenWidth * 38 / 400
|
|
||||||
|
|
||||||
if (dayOfWeek.dayOfWeek == SeriesPublishedDaysOfWeek.RANDOM) {
|
|
||||||
lp.width = screenWidth * 54 / 400
|
|
||||||
} else {
|
|
||||||
lp.width = screenWidth * 38 / 400
|
|
||||||
}
|
|
||||||
|
|
||||||
binding.tvDayOfWeek.layoutParams = lp
|
|
||||||
|
|
||||||
binding.root.setOnClickListener {
|
binding.root.setOnClickListener {
|
||||||
onClickItem(dayOfWeek.dayOfWeek)
|
onClickItem(dayOfWeek.dayOfWeek)
|
||||||
selectedDayOfWeek = dayOfWeek.dayOfWeek
|
selectedDayOfWeek = dayOfWeek.dayOfWeek
|
||||||
@@ -42,14 +33,14 @@ class DayOfWeekAdapter(
|
|||||||
private var selectedDayOfWeek = SeriesPublishedDaysOfWeek.RANDOM
|
private var selectedDayOfWeek = SeriesPublishedDaysOfWeek.RANDOM
|
||||||
|
|
||||||
private val dayOfWeekItems = listOf(
|
private val dayOfWeekItems = listOf(
|
||||||
DayOfWeek(dayOfWeekStr = "월", dayOfWeek = SeriesPublishedDaysOfWeek.MON),
|
DayOfWeek(dayOfWeekStr = context.getString(R.string.day_mon_short), dayOfWeek = SeriesPublishedDaysOfWeek.MON),
|
||||||
DayOfWeek(dayOfWeekStr = "화", dayOfWeek = SeriesPublishedDaysOfWeek.TUE),
|
DayOfWeek(dayOfWeekStr = context.getString(R.string.day_tue_short), dayOfWeek = SeriesPublishedDaysOfWeek.TUE),
|
||||||
DayOfWeek(dayOfWeekStr = "수", dayOfWeek = SeriesPublishedDaysOfWeek.WED),
|
DayOfWeek(dayOfWeekStr = context.getString(R.string.day_wed_short), dayOfWeek = SeriesPublishedDaysOfWeek.WED),
|
||||||
DayOfWeek(dayOfWeekStr = "목", dayOfWeek = SeriesPublishedDaysOfWeek.THU),
|
DayOfWeek(dayOfWeekStr = context.getString(R.string.day_thu_short), dayOfWeek = SeriesPublishedDaysOfWeek.THU),
|
||||||
DayOfWeek(dayOfWeekStr = "금", dayOfWeek = SeriesPublishedDaysOfWeek.FRI),
|
DayOfWeek(dayOfWeekStr = context.getString(R.string.day_fri_short), dayOfWeek = SeriesPublishedDaysOfWeek.FRI),
|
||||||
DayOfWeek(dayOfWeekStr = "토", dayOfWeek = SeriesPublishedDaysOfWeek.SAT),
|
DayOfWeek(dayOfWeekStr = context.getString(R.string.day_sat_short), dayOfWeek = SeriesPublishedDaysOfWeek.SAT),
|
||||||
DayOfWeek(dayOfWeekStr = "일", dayOfWeek = SeriesPublishedDaysOfWeek.SUN),
|
DayOfWeek(dayOfWeekStr = context.getString(R.string.day_sun_short), dayOfWeek = SeriesPublishedDaysOfWeek.SUN),
|
||||||
DayOfWeek(dayOfWeekStr = "랜덤", dayOfWeek = SeriesPublishedDaysOfWeek.RANDOM),
|
DayOfWeek(dayOfWeekStr = context.getString(R.string.day_random), dayOfWeek = SeriesPublishedDaysOfWeek.RANDOM),
|
||||||
)
|
)
|
||||||
|
|
||||||
// 요일 숫자에 맞춰 배열
|
// 요일 숫자에 맞춰 배열
|
||||||
|
|||||||
@@ -6,9 +6,6 @@ import android.graphics.Rect
|
|||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.os.Handler
|
import android.os.Handler
|
||||||
import android.os.Looper
|
import android.os.Looper
|
||||||
import android.text.SpannableString
|
|
||||||
import android.text.Spanned
|
|
||||||
import android.text.style.ForegroundColorSpan
|
|
||||||
import android.view.Gravity
|
import android.view.Gravity
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import android.widget.LinearLayout
|
import android.widget.LinearLayout
|
||||||
@@ -199,20 +196,6 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::infl
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun setupLiveView() {
|
private fun setupLiveView() {
|
||||||
val spSectionTitle = SpannableString(binding.tvLiveTitle.text)
|
|
||||||
spSectionTitle.setSpan(
|
|
||||||
ForegroundColorSpan(
|
|
||||||
ContextCompat.getColor(
|
|
||||||
requireContext(),
|
|
||||||
R.color.color_3bb9f1
|
|
||||||
)
|
|
||||||
),
|
|
||||||
0,
|
|
||||||
2,
|
|
||||||
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
|
|
||||||
)
|
|
||||||
binding.tvLiveTitle.text = spSectionTitle
|
|
||||||
|
|
||||||
liveAdapter = HomeLiveAdapter {
|
liveAdapter = HomeLiveAdapter {
|
||||||
if (SharedPreferenceManager.token.isNotBlank()) {
|
if (SharedPreferenceManager.token.isNotBlank()) {
|
||||||
val detailFragment = LiveRoomDetailFragment(
|
val detailFragment = LiveRoomDetailFragment(
|
||||||
@@ -282,20 +265,6 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::infl
|
|||||||
}
|
}
|
||||||
|
|
||||||
fun setupSectionCreator() {
|
fun setupSectionCreator() {
|
||||||
val spSectionTitle = SpannableString(binding.tvFamousCreatorTitle.text)
|
|
||||||
spSectionTitle.setSpan(
|
|
||||||
ForegroundColorSpan(
|
|
||||||
ContextCompat.getColor(
|
|
||||||
requireContext(),
|
|
||||||
R.color.color_3bb9f1
|
|
||||||
)
|
|
||||||
),
|
|
||||||
0,
|
|
||||||
2,
|
|
||||||
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
|
|
||||||
)
|
|
||||||
binding.tvFamousCreatorTitle.text = spSectionTitle
|
|
||||||
|
|
||||||
creatorRankingAdapter = CreatorRankingAdapter(
|
creatorRankingAdapter = CreatorRankingAdapter(
|
||||||
onClickItem = {
|
onClickItem = {
|
||||||
if (SharedPreferenceManager.token.isNotBlank()) {
|
if (SharedPreferenceManager.token.isNotBlank()) {
|
||||||
@@ -372,20 +341,6 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::infl
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun setupLatestContent() {
|
private fun setupLatestContent() {
|
||||||
val spSectionTitle = SpannableString(binding.tvNewContent.text)
|
|
||||||
spSectionTitle.setSpan(
|
|
||||||
ForegroundColorSpan(
|
|
||||||
ContextCompat.getColor(
|
|
||||||
requireContext(),
|
|
||||||
R.color.color_3bb9f1
|
|
||||||
)
|
|
||||||
),
|
|
||||||
0,
|
|
||||||
2,
|
|
||||||
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
|
|
||||||
)
|
|
||||||
binding.tvNewContent.text = spSectionTitle
|
|
||||||
|
|
||||||
latestContentThemeAdapter = HomeContentThemeAdapter {
|
latestContentThemeAdapter = HomeContentThemeAdapter {
|
||||||
viewModel.getLatestContentByTheme(theme = it)
|
viewModel.getLatestContentByTheme(theme = it)
|
||||||
}
|
}
|
||||||
@@ -583,20 +538,6 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::infl
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun setupOriginalSeries() {
|
private fun setupOriginalSeries() {
|
||||||
val spSectionTitle = SpannableString(binding.tvSeriesOriginal.text)
|
|
||||||
spSectionTitle.setSpan(
|
|
||||||
ForegroundColorSpan(
|
|
||||||
ContextCompat.getColor(
|
|
||||||
requireContext(),
|
|
||||||
R.color.color_3bb9f1
|
|
||||||
)
|
|
||||||
),
|
|
||||||
0,
|
|
||||||
2,
|
|
||||||
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
|
|
||||||
)
|
|
||||||
binding.tvSeriesOriginal.text = spSectionTitle
|
|
||||||
|
|
||||||
originalSeriesAdapter = HomeSeriesAdapter {
|
originalSeriesAdapter = HomeSeriesAdapter {
|
||||||
if (SharedPreferenceManager.token.isNotBlank()) {
|
if (SharedPreferenceManager.token.isNotBlank()) {
|
||||||
startActivity(
|
startActivity(
|
||||||
@@ -698,20 +639,6 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::infl
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun setupSeriesDayOfWeek() {
|
private fun setupSeriesDayOfWeek() {
|
||||||
val spSectionTitle = SpannableString(binding.tvSeriesDayOfWeek.text)
|
|
||||||
spSectionTitle.setSpan(
|
|
||||||
ForegroundColorSpan(
|
|
||||||
ContextCompat.getColor(
|
|
||||||
requireContext(),
|
|
||||||
R.color.color_3bb9f1
|
|
||||||
)
|
|
||||||
),
|
|
||||||
0,
|
|
||||||
3,
|
|
||||||
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
|
|
||||||
)
|
|
||||||
binding.tvSeriesDayOfWeek.text = spSectionTitle
|
|
||||||
|
|
||||||
seriesDayOfWeekAdapter = HomeSeriesAdapter {
|
seriesDayOfWeekAdapter = HomeSeriesAdapter {
|
||||||
if (SharedPreferenceManager.token.isNotBlank()) {
|
if (SharedPreferenceManager.token.isNotBlank()) {
|
||||||
startActivity(
|
startActivity(
|
||||||
@@ -767,7 +694,7 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::infl
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
val dayOfWeekAdapter = DayOfWeekAdapter(screenWidth = screenWidth) {
|
val dayOfWeekAdapter = DayOfWeekAdapter(requireContext()) {
|
||||||
viewModel.getDayOfWeekSeriesList(it)
|
viewModel.getDayOfWeekSeriesList(it)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -778,7 +705,7 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::infl
|
|||||||
false
|
false
|
||||||
) {
|
) {
|
||||||
override fun canScrollVertically() = false
|
override fun canScrollVertically() = false
|
||||||
override fun canScrollHorizontally() = false
|
override fun canScrollHorizontally() = true
|
||||||
}
|
}
|
||||||
rvDayOfWeek.layoutManager = layoutManager
|
rvDayOfWeek.layoutManager = layoutManager
|
||||||
|
|
||||||
@@ -889,20 +816,6 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::infl
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun setupWeelyChart() {
|
private fun setupWeelyChart() {
|
||||||
val spSectionTitle = SpannableString(binding.tvWeeklyChart.text)
|
|
||||||
spSectionTitle.setSpan(
|
|
||||||
ForegroundColorSpan(
|
|
||||||
ContextCompat.getColor(
|
|
||||||
requireContext(),
|
|
||||||
R.color.color_3bb9f1
|
|
||||||
)
|
|
||||||
),
|
|
||||||
0,
|
|
||||||
2,
|
|
||||||
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
|
|
||||||
)
|
|
||||||
binding.tvWeeklyChart.text = spSectionTitle
|
|
||||||
|
|
||||||
// 정렬 선택 RecyclerView 설정
|
// 정렬 선택 RecyclerView 설정
|
||||||
val sortAdapter = ContentRankingSortAdapter {
|
val sortAdapter = ContentRankingSortAdapter {
|
||||||
viewModel.getContentRanking(it)
|
viewModel.getContentRanking(it)
|
||||||
@@ -1009,20 +922,6 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::infl
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun setupRecommendChannel() {
|
private fun setupRecommendChannel() {
|
||||||
val spSectionTitle = SpannableString(binding.tvRecommendChannel.text)
|
|
||||||
spSectionTitle.setSpan(
|
|
||||||
ForegroundColorSpan(
|
|
||||||
ContextCompat.getColor(
|
|
||||||
requireContext(),
|
|
||||||
R.color.color_3bb9f1
|
|
||||||
)
|
|
||||||
),
|
|
||||||
0,
|
|
||||||
2,
|
|
||||||
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
|
|
||||||
)
|
|
||||||
binding.tvRecommendChannel.text = spSectionTitle
|
|
||||||
|
|
||||||
recommendChannelAdapter = HomeRecommendChannelAdapter(
|
recommendChannelAdapter = HomeRecommendChannelAdapter(
|
||||||
onClickCreatorProfile = {
|
onClickCreatorProfile = {
|
||||||
if (SharedPreferenceManager.token.isNotBlank()) {
|
if (SharedPreferenceManager.token.isNotBlank()) {
|
||||||
@@ -1093,20 +992,6 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::infl
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun setupFreeContent() {
|
private fun setupFreeContent() {
|
||||||
val spSectionTitle = SpannableString(binding.tvFreeContent.text)
|
|
||||||
spSectionTitle.setSpan(
|
|
||||||
ForegroundColorSpan(
|
|
||||||
ContextCompat.getColor(
|
|
||||||
requireContext(),
|
|
||||||
R.color.color_3bb9f1
|
|
||||||
)
|
|
||||||
),
|
|
||||||
0,
|
|
||||||
2,
|
|
||||||
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
|
|
||||||
)
|
|
||||||
binding.tvFreeContent.text = spSectionTitle
|
|
||||||
|
|
||||||
homeFreeContentAdapter = HomeContentAdapter {
|
homeFreeContentAdapter = HomeContentAdapter {
|
||||||
if (SharedPreferenceManager.token.isNotBlank()) {
|
if (SharedPreferenceManager.token.isNotBlank()) {
|
||||||
startActivity(
|
startActivity(
|
||||||
@@ -1168,20 +1053,6 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::infl
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun setupPointContent() {
|
private fun setupPointContent() {
|
||||||
val spSectionTitle = SpannableString(binding.tvPointContent.text)
|
|
||||||
spSectionTitle.setSpan(
|
|
||||||
ForegroundColorSpan(
|
|
||||||
ContextCompat.getColor(
|
|
||||||
requireContext(),
|
|
||||||
R.color.color_3bb9f1
|
|
||||||
)
|
|
||||||
),
|
|
||||||
0,
|
|
||||||
3,
|
|
||||||
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
|
|
||||||
)
|
|
||||||
binding.tvPointContent.text = spSectionTitle
|
|
||||||
|
|
||||||
homePointContentAdapter = HomeContentAdapter {
|
homePointContentAdapter = HomeContentAdapter {
|
||||||
if (SharedPreferenceManager.token.isNotBlank()) {
|
if (SharedPreferenceManager.token.isNotBlank()) {
|
||||||
startActivity(
|
startActivity(
|
||||||
@@ -1400,7 +1271,7 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::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 {
|
||||||
@@ -1411,19 +1282,19 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::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({
|
||||||
liveViewModel.enterRoom(roomId, onEnterRoomSuccess)
|
liveViewModel.enterRoom(roomId, onEnterRoomSuccess)
|
||||||
}, 300)
|
}, 300)
|
||||||
},
|
},
|
||||||
cancelButtonTitle = "취소",
|
cancelButtonTitle = getString(R.string.cancel),
|
||||||
cancelButtonClick = {}
|
cancelButtonClick = {}
|
||||||
).show(screenWidth)
|
).show(screenWidth)
|
||||||
}
|
}
|
||||||
@@ -1442,12 +1313,11 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::infl
|
|||||||
SodaDialog(
|
SodaDialog(
|
||||||
activity = requireActivity(),
|
activity = requireActivity(),
|
||||||
layoutInflater = layoutInflater,
|
layoutInflater = layoutInflater,
|
||||||
title = "본인인증",
|
title = getString(R.string.auth_title),
|
||||||
desc = "보이스온의 오픈월드 캐릭터톡은\n청소년 보호를 위해 본인인증한\n성인만 이용이 가능합니다.\n" +
|
desc = getString(R.string.auth_desc),
|
||||||
"캐릭터톡 서비스를 이용하시려면\n본인인증을 하고 이용해주세요.",
|
confirmButtonTitle = getString(R.string.auth_go),
|
||||||
confirmButtonTitle = "본인인증 하러가기",
|
|
||||||
confirmButtonClick = { startAuthFlow() },
|
confirmButtonClick = { startAuthFlow() },
|
||||||
cancelButtonTitle = "취소",
|
cancelButtonTitle = getString(R.string.cancel),
|
||||||
cancelButtonClick = {},
|
cancelButtonClick = {},
|
||||||
descGravity = Gravity.CENTER
|
descGravity = Gravity.CENTER
|
||||||
).show(screenWidth)
|
).show(screenWidth)
|
||||||
|
|||||||
@@ -377,7 +377,7 @@ class MainActivity : BaseActivity<ActivityMainBinding>(ActivityMainBinding::infl
|
|||||||
private fun setupBottomTabLayout() {
|
private fun setupBottomTabLayout() {
|
||||||
setupTab(
|
setupTab(
|
||||||
binding = binding.tabHome,
|
binding = binding.tabHome,
|
||||||
title = "홈",
|
title = getString(R.string.tab_home),
|
||||||
imageSrc = R.drawable.ic_tabbar_home,
|
imageSrc = R.drawable.ic_tabbar_home,
|
||||||
colorStateList = ContextCompat.getColorStateList(
|
colorStateList = ContextCompat.getColorStateList(
|
||||||
applicationContext,
|
applicationContext,
|
||||||
@@ -388,7 +388,7 @@ class MainActivity : BaseActivity<ActivityMainBinding>(ActivityMainBinding::infl
|
|||||||
|
|
||||||
setupTab(
|
setupTab(
|
||||||
binding = binding.tabChat,
|
binding = binding.tabChat,
|
||||||
title = "채팅",
|
title = getString(R.string.tab_chat),
|
||||||
imageSrc = R.drawable.ic_tabbar_chat,
|
imageSrc = R.drawable.ic_tabbar_chat,
|
||||||
colorStateList = ContextCompat.getColorStateList(
|
colorStateList = ContextCompat.getColorStateList(
|
||||||
applicationContext,
|
applicationContext,
|
||||||
@@ -399,7 +399,7 @@ class MainActivity : BaseActivity<ActivityMainBinding>(ActivityMainBinding::infl
|
|||||||
|
|
||||||
setupTab(
|
setupTab(
|
||||||
binding = binding.tabLive,
|
binding = binding.tabLive,
|
||||||
title = "라이브",
|
title = getString(R.string.tab_live),
|
||||||
imageSrc = R.drawable.ic_tabbar_live,
|
imageSrc = R.drawable.ic_tabbar_live,
|
||||||
colorStateList = ContextCompat.getColorStateList(
|
colorStateList = ContextCompat.getColorStateList(
|
||||||
applicationContext,
|
applicationContext,
|
||||||
@@ -410,7 +410,7 @@ class MainActivity : BaseActivity<ActivityMainBinding>(ActivityMainBinding::infl
|
|||||||
|
|
||||||
setupTab(
|
setupTab(
|
||||||
binding = binding.tabMy,
|
binding = binding.tabMy,
|
||||||
title = "마이",
|
title = getString(R.string.tab_my),
|
||||||
imageSrc = R.drawable.ic_tabbar_my,
|
imageSrc = R.drawable.ic_tabbar_my,
|
||||||
colorStateList = ContextCompat.getColorStateList(
|
colorStateList = ContextCompat.getColorStateList(
|
||||||
applicationContext,
|
applicationContext,
|
||||||
|
|||||||
@@ -78,7 +78,7 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginHorizontal="24dp"
|
android:layout_marginHorizontal="24dp"
|
||||||
android:fontFamily="@font/pretendard_bold"
|
android:fontFamily="@font/pretendard_bold"
|
||||||
android:text="지금 라이브 중"
|
android:text="@string/live_now"
|
||||||
android:textColor="@color/white"
|
android:textColor="@color/white"
|
||||||
android:textSize="24sp" />
|
android:textSize="24sp" />
|
||||||
|
|
||||||
@@ -105,7 +105,7 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginHorizontal="24dp"
|
android:layout_marginHorizontal="24dp"
|
||||||
android:fontFamily="@font/pretendard_bold"
|
android:fontFamily="@font/pretendard_bold"
|
||||||
android:text="인기 크리에이터"
|
android:text="@string/famous_creator"
|
||||||
android:textColor="@color/white"
|
android:textColor="@color/white"
|
||||||
android:textSize="24sp" />
|
android:textSize="24sp" />
|
||||||
|
|
||||||
@@ -136,7 +136,7 @@
|
|||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:fontFamily="@font/pretendard_bold"
|
android:fontFamily="@font/pretendard_bold"
|
||||||
android:text="최신 콘텐츠"
|
android:text="@string/latest_content"
|
||||||
android:textColor="@color/color_eeeeee"
|
android:textColor="@color/color_eeeeee"
|
||||||
android:textSize="24sp" />
|
android:textSize="24sp" />
|
||||||
|
|
||||||
@@ -147,7 +147,7 @@
|
|||||||
android:layout_alignParentEnd="true"
|
android:layout_alignParentEnd="true"
|
||||||
android:layout_centerVertical="true"
|
android:layout_centerVertical="true"
|
||||||
android:fontFamily="@font/pretendard_regular"
|
android:fontFamily="@font/pretendard_regular"
|
||||||
android:text="전체보기"
|
android:text="@string/view_all"
|
||||||
android:textColor="@color/color_607d8b" />
|
android:textColor="@color/color_607d8b" />
|
||||||
</RelativeLayout>
|
</RelativeLayout>
|
||||||
|
|
||||||
@@ -213,7 +213,7 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:fontFamily="@font/pretendard_bold"
|
android:fontFamily="@font/pretendard_bold"
|
||||||
android:text="오직 보이스온에서만"
|
android:text="@string/voiceon_original_only"
|
||||||
android:textColor="@color/white"
|
android:textColor="@color/white"
|
||||||
android:textSize="24sp" />
|
android:textSize="24sp" />
|
||||||
|
|
||||||
@@ -222,7 +222,7 @@
|
|||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:fontFamily="@font/pretendard_regular"
|
android:fontFamily="@font/pretendard_regular"
|
||||||
android:text="전체보기"
|
android:text="@string/view_all"
|
||||||
android:textColor="#90A4AE"
|
android:textColor="#90A4AE"
|
||||||
android:textSize="14sp" />
|
android:textSize="14sp" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
@@ -266,7 +266,7 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:fontFamily="@font/pretendard_bold"
|
android:fontFamily="@font/pretendard_bold"
|
||||||
android:text="요일별 시리즈"
|
android:text="@string/series_by_weekday"
|
||||||
android:textColor="@color/white"
|
android:textColor="@color/white"
|
||||||
android:textSize="24sp" />
|
android:textSize="24sp" />
|
||||||
|
|
||||||
@@ -275,7 +275,7 @@
|
|||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:fontFamily="@font/pretendard_regular"
|
android:fontFamily="@font/pretendard_regular"
|
||||||
android:text="전체보기"
|
android:text="@string/view_all"
|
||||||
android:textColor="#90A4AE"
|
android:textColor="#90A4AE"
|
||||||
android:textSize="14sp" />
|
android:textSize="14sp" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
@@ -319,7 +319,7 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:fontFamily="@font/pretendard_bold"
|
android:fontFamily="@font/pretendard_bold"
|
||||||
android:text="인기 캐릭터 채팅"
|
android:text="@string/popular_character_chat"
|
||||||
android:textColor="@color/white"
|
android:textColor="@color/white"
|
||||||
android:textSize="24sp" />
|
android:textSize="24sp" />
|
||||||
|
|
||||||
@@ -328,7 +328,7 @@
|
|||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:fontFamily="@font/pretendard_regular"
|
android:fontFamily="@font/pretendard_regular"
|
||||||
android:text="전체보기"
|
android:text="@string/view_all"
|
||||||
android:textColor="#90A4AE"
|
android:textColor="#90A4AE"
|
||||||
android:textSize="14sp" />
|
android:textSize="14sp" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
@@ -356,7 +356,7 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginHorizontal="24dp"
|
android:layout_marginHorizontal="24dp"
|
||||||
android:fontFamily="@font/pretendard_bold"
|
android:fontFamily="@font/pretendard_bold"
|
||||||
android:text="보온 주간 차트"
|
android:text="@string/weekly_chart"
|
||||||
android:textColor="@color/white"
|
android:textColor="@color/white"
|
||||||
android:textSize="24sp" />
|
android:textSize="24sp" />
|
||||||
|
|
||||||
@@ -393,7 +393,7 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginHorizontal="24dp"
|
android:layout_marginHorizontal="24dp"
|
||||||
android:fontFamily="@font/pretendard_bold"
|
android:fontFamily="@font/pretendard_bold"
|
||||||
android:text="추천 채널"
|
android:text="@string/recommend_channel"
|
||||||
android:textColor="@color/white"
|
android:textColor="@color/white"
|
||||||
android:textSize="24sp" />
|
android:textSize="24sp" />
|
||||||
|
|
||||||
@@ -427,7 +427,7 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:fontFamily="@font/pretendard_bold"
|
android:fontFamily="@font/pretendard_bold"
|
||||||
android:text="무료 콘텐츠"
|
android:text="@string/free_content"
|
||||||
android:textColor="@color/white"
|
android:textColor="@color/white"
|
||||||
android:textSize="24sp" />
|
android:textSize="24sp" />
|
||||||
|
|
||||||
@@ -436,7 +436,7 @@
|
|||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:fontFamily="@font/pretendard_regular"
|
android:fontFamily="@font/pretendard_regular"
|
||||||
android:text="전체보기"
|
android:text="@string/view_all"
|
||||||
android:textColor="#90A4AE"
|
android:textColor="#90A4AE"
|
||||||
android:textSize="14sp" />
|
android:textSize="14sp" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
@@ -472,7 +472,7 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:fontFamily="@font/pretendard_bold"
|
android:fontFamily="@font/pretendard_bold"
|
||||||
android:text="포인트 대여 콘텐츠"
|
android:text="@string/point_rental_content"
|
||||||
android:textColor="@color/white"
|
android:textColor="@color/white"
|
||||||
android:textSize="24sp" />
|
android:textSize="24sp" />
|
||||||
|
|
||||||
@@ -481,7 +481,7 @@
|
|||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:fontFamily="@font/pretendard_regular"
|
android:fontFamily="@font/pretendard_regular"
|
||||||
android:text="전체보기"
|
android:text="@string/view_all"
|
||||||
android:textColor="#90A4AE"
|
android:textColor="#90A4AE"
|
||||||
android:textSize="14sp" />
|
android:textSize="14sp" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
@@ -517,7 +517,7 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:fontFamily="@font/pretendard_bold"
|
android:fontFamily="@font/pretendard_bold"
|
||||||
android:text="추천 콘텐츠"
|
android:text="@string/recommend_content"
|
||||||
android:textColor="@color/white"
|
android:textColor="@color/white"
|
||||||
android:textSize="24sp" />
|
android:textSize="24sp" />
|
||||||
|
|
||||||
@@ -543,14 +543,7 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginHorizontal="24dp"
|
android:layout_marginHorizontal="24dp"
|
||||||
android:fontFamily="@font/pretendard_regular"
|
android:fontFamily="@font/pretendard_regular"
|
||||||
android:text="
|
android:text="@string/company_info"
|
||||||
- 회사명 : 주식회사 소다라이브\n\n
|
|
||||||
- 대표자 : 이재형\n\n
|
|
||||||
- 주소 : 경기도 성남시 분당구 황새울로335번길 10, 5층 563A호\n\n
|
|
||||||
- 사업자등록번호 : 870-81-03220\n\n
|
|
||||||
- 통신판매업신고 : 제2024-성남분당B-1012호\n\n
|
|
||||||
- 고객센터 : 02.2055.1477(이용시간 10:00~19:00)\n\n
|
|
||||||
- 대표 이메일 : sodalive.official@gmail.com"
|
|
||||||
android:textColor="@color/color_777777"
|
android:textColor="@color/color_777777"
|
||||||
android:textSize="11sp"
|
android:textSize="11sp"
|
||||||
app:animDuration="500"
|
app:animDuration="500"
|
||||||
@@ -558,8 +551,8 @@
|
|||||||
app:ellipsizeTextColor="@color/color_777777"
|
app:ellipsizeTextColor="@color/color_777777"
|
||||||
app:expandType="layout"
|
app:expandType="layout"
|
||||||
app:isExpanded="false"
|
app:isExpanded="false"
|
||||||
app:readLessText="간략히"
|
app:readLessText="@string/read_less"
|
||||||
app:readMoreText="더보기"
|
app:readMoreText="@string/read_more"
|
||||||
app:textMode="line" />
|
app:textMode="line" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
</androidx.core.widget.NestedScrollView>
|
</androidx.core.widget.NestedScrollView>
|
||||||
@@ -588,7 +581,7 @@
|
|||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:fontFamily="@font/pretendard_bold"
|
android:fontFamily="@font/pretendard_bold"
|
||||||
android:text="콘텐츠 업로드"
|
android:text="@string/action_upload_content"
|
||||||
android:textColor="@color/white"
|
android:textColor="@color/white"
|
||||||
android:textSize="13.3sp" />
|
android:textSize="13.3sp" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|||||||
@@ -13,6 +13,8 @@
|
|||||||
android:background="@drawable/bg_selectable_day_of_week"
|
android:background="@drawable/bg_selectable_day_of_week"
|
||||||
android:fontFamily="@font/pretendard_regular"
|
android:fontFamily="@font/pretendard_regular"
|
||||||
android:gravity="center"
|
android:gravity="center"
|
||||||
|
android:paddingHorizontal="10dp"
|
||||||
|
android:paddingVertical="6dp"
|
||||||
android:textColor="@color/white"
|
android:textColor="@color/white"
|
||||||
android:textSize="18sp"
|
android:textSize="18sp"
|
||||||
tools:text="월" />
|
tools:text="월" />
|
||||||
|
|||||||
@@ -57,4 +57,41 @@
|
|||||||
<string name="login_google_failed">Could not sign in with Google. Please try again.</string>
|
<string name="login_google_failed">Could not sign in with Google. Please try again.</string>
|
||||||
<string name="login_failed">Could not sign in. Please try again.</string>
|
<string name="login_failed">Could not sign in. Please try again.</string>
|
||||||
<string name="login_kakao_failed">Could not sign in with Kakao. Please try again.</string>
|
<string name="login_kakao_failed">Could not sign in with Kakao. Please try again.</string>
|
||||||
|
|
||||||
|
<!-- Main / Home -->
|
||||||
|
<string name="tab_home">Home</string>
|
||||||
|
<string name="tab_chat">Chat</string>
|
||||||
|
<string name="tab_live">Live</string>
|
||||||
|
<string name="tab_my">My</string>
|
||||||
|
<string name="live_now">Live now</string>
|
||||||
|
<string name="famous_creator">Popular creators</string>
|
||||||
|
<string name="latest_content">Latest content</string>
|
||||||
|
<string name="view_all">View all</string>
|
||||||
|
<string name="voiceon_original_only">Only on VoiceOn</string>
|
||||||
|
<string name="series_by_weekday">Series by weekday</string>
|
||||||
|
<string name="popular_character_chat">Popular character chat</string>
|
||||||
|
<string name="weekly_chart">Bo-on weekly chart</string>
|
||||||
|
<string name="recommend_channel">Recommended channels</string>
|
||||||
|
<string name="free_content">Free content</string>
|
||||||
|
<string name="point_rental_content">Point rental content</string>
|
||||||
|
<string name="recommend_content">Recommended content</string>
|
||||||
|
<string name="read_more">Read more</string>
|
||||||
|
<string name="read_less">Read less</string>
|
||||||
|
<string name="action_upload_content">Upload content</string>
|
||||||
|
<string name="company_info">- Company: SodaLive Inc.\n\n- CEO: Jaehyung Lee\n\n- Address: 5F #563A, 10, Hwangsaeul-ro 335beon-gil, Bundang-gu, Seongnam-si, Gyeonggi-do\n\n- Business Registration No.: 870-81-03220\n\n- Mail-Order Sales Report: No. 2024-SeongnamBundangB-1012\n\n- Customer Center: 02-2055-1477 (10:00~19:00)\n\n- Contact Email: sodalive.official@gmail.com</string>
|
||||||
|
<string name="live_paid_title">Paid live entry</string>
|
||||||
|
<string name="live_paid_desc">Spend %1$d cans and\nenter the live?</string>
|
||||||
|
<string name="live_paid_warning">The live started %1$d hour(s) %2$d minute(s) ago. It may end within 30 minutes after you enter.</string>
|
||||||
|
<string name="live_paid_confirm">Enter after payment</string>
|
||||||
|
<string name="auth_title">Identity verification</string>
|
||||||
|
<string name="auth_desc">VoiceOn open-world character chat is available only to verified adults to protect youth.\nPlease verify your identity to use the service.</string>
|
||||||
|
<string name="auth_go">Verify now</string>
|
||||||
|
<string name="day_mon_short">Mon</string>
|
||||||
|
<string name="day_tue_short">Tue</string>
|
||||||
|
<string name="day_wed_short">Wed</string>
|
||||||
|
<string name="day_thu_short">Thu</string>
|
||||||
|
<string name="day_fri_short">Fri</string>
|
||||||
|
<string name="day_sat_short">Sat</string>
|
||||||
|
<string name="day_sun_short">Sun</string>
|
||||||
|
<string name="day_random">Random</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|||||||
@@ -57,4 +57,41 @@
|
|||||||
<string name="login_google_failed">Googleでログインできませんでした。もう一度お試しください。</string>
|
<string name="login_google_failed">Googleでログインできませんでした。もう一度お試しください。</string>
|
||||||
<string name="login_failed">ログインできませんでした。もう一度お試しください。</string>
|
<string name="login_failed">ログインできませんでした。もう一度お試しください。</string>
|
||||||
<string name="login_kakao_failed">Kakaoアカウントでログインできませんでした。もう一度お試しください。</string>
|
<string name="login_kakao_failed">Kakaoアカウントでログインできませんでした。もう一度お試しください。</string>
|
||||||
|
|
||||||
|
<!-- Main / Home -->
|
||||||
|
<string name="tab_home">ホーム</string>
|
||||||
|
<string name="tab_chat">チャット</string>
|
||||||
|
<string name="tab_live">ライブ</string>
|
||||||
|
<string name="tab_my">マイ</string>
|
||||||
|
<string name="live_now">ライブ配信中</string>
|
||||||
|
<string name="famous_creator">人気クリエイター</string>
|
||||||
|
<string name="latest_content">最新コンテンツ</string>
|
||||||
|
<string name="view_all">すべて見る</string>
|
||||||
|
<string name="voiceon_original_only">ボイスオン限定</string>
|
||||||
|
<string name="series_by_weekday">曜日別シリーズ</string>
|
||||||
|
<string name="popular_character_chat">人気キャラクターチャット</string>
|
||||||
|
<string name="weekly_chart">ボオン週間チャート</string>
|
||||||
|
<string name="recommend_channel">おすすめチャンネル</string>
|
||||||
|
<string name="free_content">無料コンテンツ</string>
|
||||||
|
<string name="point_rental_content">ポイントレンタルコンテンツ</string>
|
||||||
|
<string name="recommend_content">おすすめコンテンツ</string>
|
||||||
|
<string name="read_more">もっと見る</string>
|
||||||
|
<string name="read_less">折りたたむ</string>
|
||||||
|
<string name="action_upload_content">コンテンツをアップロード</string>
|
||||||
|
<string name="company_info">- 会社名: 株式会社ソダライブ\n\n- 代表者: イ・ジェヒョン\n\n- 住所: 京畿道 城南市 盆唐区 ファンセウル路335番キル10, 5階 563A号\n\n- 事業者登録番号: 870-81-03220\n\n- 通信販売業申告: 第2024-城南盆唐B-1012号\n\n- カスタマーセンター: 02-2055-1477(営業時間 10:00~19:00)\n\n- 代表メール: sodalive.official@gmail.com</string>
|
||||||
|
<string name="live_paid_title">有料ライブ入場</string>
|
||||||
|
<string name="live_paid_desc">%1$dCANを消費して\nライブに入場しますか?</string>
|
||||||
|
<string name="live_paid_warning">ライブ開始から%1$d時間%2$d分経過しています。入場後30分以内に終了する場合があります。</string>
|
||||||
|
<string name="live_paid_confirm">決済して入場</string>
|
||||||
|
<string name="auth_title">本人認証</string>
|
||||||
|
<string name="auth_desc">ボイスオンのオープンワールドキャラクタートークは、青少年保護のため本人認証済みの成人のみ利用できます。\n利用するには本人認証を行ってください。</string>
|
||||||
|
<string name="auth_go">本人認証へ進む</string>
|
||||||
|
<string name="day_mon_short">月</string>
|
||||||
|
<string name="day_tue_short">火</string>
|
||||||
|
<string name="day_wed_short">水</string>
|
||||||
|
<string name="day_thu_short">木</string>
|
||||||
|
<string name="day_fri_short">金</string>
|
||||||
|
<string name="day_sat_short">土</string>
|
||||||
|
<string name="day_sun_short">日</string>
|
||||||
|
<string name="day_random">ランダム</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|||||||
@@ -56,4 +56,41 @@
|
|||||||
<string name="login_google_failed">구글 로그인을 하지 못했습니다. 다시 시도해 주세요</string>
|
<string name="login_google_failed">구글 로그인을 하지 못했습니다. 다시 시도해 주세요</string>
|
||||||
<string name="login_failed">로그인을 하지 못했습니다. 다시 시도해 주세요</string>
|
<string name="login_failed">로그인을 하지 못했습니다. 다시 시도해 주세요</string>
|
||||||
<string name="login_kakao_failed">카카오 계정으로 로그인 하지 못했습니다. 다시 시도해 주세요</string>
|
<string name="login_kakao_failed">카카오 계정으로 로그인 하지 못했습니다. 다시 시도해 주세요</string>
|
||||||
|
|
||||||
|
<!-- Main / Home -->
|
||||||
|
<string name="tab_home">홈</string>
|
||||||
|
<string name="tab_chat">채팅</string>
|
||||||
|
<string name="tab_live">라이브</string>
|
||||||
|
<string name="tab_my">마이</string>
|
||||||
|
<string name="live_now">지금 라이브 중</string>
|
||||||
|
<string name="famous_creator">인기 크리에이터</string>
|
||||||
|
<string name="latest_content">최신 콘텐츠</string>
|
||||||
|
<string name="view_all">전체보기</string>
|
||||||
|
<string name="voiceon_original_only">오직 보이스온에서만</string>
|
||||||
|
<string name="series_by_weekday">요일별 시리즈</string>
|
||||||
|
<string name="popular_character_chat">인기 캐릭터 채팅</string>
|
||||||
|
<string name="weekly_chart">보온 주간 차트</string>
|
||||||
|
<string name="recommend_channel">추천 채널</string>
|
||||||
|
<string name="free_content">무료 콘텐츠</string>
|
||||||
|
<string name="point_rental_content">포인트 대여 콘텐츠</string>
|
||||||
|
<string name="recommend_content">추천 콘텐츠</string>
|
||||||
|
<string name="read_more">더보기</string>
|
||||||
|
<string name="read_less">간략히</string>
|
||||||
|
<string name="action_upload_content">콘텐츠 업로드</string>
|
||||||
|
<string name="company_info">- 회사명 : 주식회사 소다라이브\n\n- 대표자 : 이재형\n\n- 주소 : 경기도 성남시 분당구 황새울로335번길 10, 5층 563A호\n\n- 사업자등록번호 : 870-81-03220\n\n- 통신판매업신고 : 제2024-성남분당B-1012호\n\n- 고객센터 : 02.2055.1477(이용시간 10:00~19:00)\n\n- 대표 이메일 : sodalive.official@gmail.com</string>
|
||||||
|
<string name="live_paid_title">유료 라이브 입장</string>
|
||||||
|
<string name="live_paid_desc">%1$d캔을 차감하고\n라이브에 입장 하시겠습니까?</string>
|
||||||
|
<string name="live_paid_warning">라이브를 시작한 지 %1$d시간 %2$d분이 지났습니다. 라이브에 입장 후 30분 이내에 라이브가 종료될 수도 있습니다.</string>
|
||||||
|
<string name="live_paid_confirm">결제 후 입장</string>
|
||||||
|
<string name="auth_title">본인인증</string>
|
||||||
|
<string name="auth_desc">보이스온의 오픈월드 캐릭터톡은\n청소년 보호를 위해 본인인증한\n성인만 이용이 가능합니다.\n캐릭터톡 서비스를 이용하시려면\n본인인증을 하고 이용해주세요.</string>
|
||||||
|
<string name="auth_go">본인인증 하러가기</string>
|
||||||
|
<string name="day_mon_short">월</string>
|
||||||
|
<string name="day_tue_short">화</string>
|
||||||
|
<string name="day_wed_short">수</string>
|
||||||
|
<string name="day_thu_short">목</string>
|
||||||
|
<string name="day_fri_short">금</string>
|
||||||
|
<string name="day_sat_short">토</string>
|
||||||
|
<string name="day_sun_short">일</string>
|
||||||
|
<string name="day_random">랜덤</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|||||||
Reference in New Issue
Block a user