시리즈 메인 문자열 리소스화
This commit is contained in:
@@ -14,16 +14,22 @@ class SeriesMainActivity : BaseActivity<ActivitySeriesMainBinding>(
|
||||
private var currentTab = 0
|
||||
|
||||
override fun setupView() {
|
||||
binding.toolbar.tvBack.text = "시리즈 전체보기"
|
||||
binding.toolbar.tvBack.text = getString(R.string.screen_series_main_title)
|
||||
binding.toolbar.tvBack.setOnClickListener { finish() }
|
||||
|
||||
setupTabs()
|
||||
}
|
||||
|
||||
private fun setupTabs() {
|
||||
binding.tabLayout.addTab(binding.tabLayout.newTab().setText("홈"))
|
||||
binding.tabLayout.addTab(binding.tabLayout.newTab().setText("요일별"))
|
||||
binding.tabLayout.addTab(binding.tabLayout.newTab().setText("장르별"))
|
||||
binding.tabLayout.addTab(
|
||||
binding.tabLayout.newTab().setText(R.string.screen_series_main_tab_home)
|
||||
)
|
||||
binding.tabLayout.addTab(
|
||||
binding.tabLayout.newTab().setText(R.string.screen_series_main_tab_day_of_week)
|
||||
)
|
||||
binding.tabLayout.addTab(
|
||||
binding.tabLayout.newTab().setText(R.string.screen_series_main_tab_genre)
|
||||
)
|
||||
|
||||
// 탭 선택 리스너 설정
|
||||
binding.tabLayout.addOnTabSelectedListener(object : TabLayout.OnTabSelectedListener {
|
||||
|
||||
@@ -4,10 +4,12 @@ import androidx.lifecycle.LiveData
|
||||
import androidx.lifecycle.MutableLiveData
|
||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||
import kr.co.vividnext.sodalive.R
|
||||
import kr.co.vividnext.sodalive.audio_content.series.GetSeriesListResponse
|
||||
import kr.co.vividnext.sodalive.audio_content.series.main.SeriesMainRepository
|
||||
import kr.co.vividnext.sodalive.base.BaseViewModel
|
||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||
|
||||
class SeriesMainByGenreViewModel(
|
||||
private val repository: SeriesMainRepository
|
||||
@@ -36,6 +38,9 @@ class SeriesMainByGenreViewModel(
|
||||
val selectedGenreId: Long?
|
||||
get() = _selectedGenreId
|
||||
|
||||
private val unknownErrorMessage: String
|
||||
get() = SodaLiveApplicationHolder.get().getString(R.string.common_error_unknown)
|
||||
|
||||
fun loadGenres() {
|
||||
_isLoading.value = true
|
||||
compositeDisposable.add(
|
||||
@@ -59,12 +64,12 @@ class SeriesMainByGenreViewModel(
|
||||
_genreListLiveData.value = emptyList()
|
||||
}
|
||||
} else {
|
||||
_toastLiveData.value = it.message ?: "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
||||
_toastLiveData.value = it.message ?: unknownErrorMessage
|
||||
}
|
||||
},
|
||||
{
|
||||
_isLoading.value = false
|
||||
_toastLiveData.value = "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
||||
_toastLiveData.value = unknownErrorMessage
|
||||
}
|
||||
)
|
||||
)
|
||||
@@ -108,12 +113,12 @@ class SeriesMainByGenreViewModel(
|
||||
isLast = true
|
||||
}
|
||||
} else {
|
||||
_toastLiveData.value = it.message ?: "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
||||
_toastLiveData.value = it.message ?: unknownErrorMessage
|
||||
}
|
||||
},
|
||||
{
|
||||
_isLoading.value = false
|
||||
_toastLiveData.value = "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
||||
_toastLiveData.value = unknownErrorMessage
|
||||
}
|
||||
)
|
||||
)
|
||||
|
||||
@@ -5,10 +5,12 @@ import androidx.lifecycle.MutableLiveData
|
||||
import com.orhanobut.logger.Logger
|
||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||
import kr.co.vividnext.sodalive.R
|
||||
import kr.co.vividnext.sodalive.audio_content.series.GetSeriesListResponse
|
||||
import kr.co.vividnext.sodalive.audio_content.series.main.SeriesMainRepository
|
||||
import kr.co.vividnext.sodalive.base.BaseViewModel
|
||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||
import kr.co.vividnext.sodalive.home.SeriesPublishedDaysOfWeek
|
||||
|
||||
class SeriesMainDayOfWeekViewModel(
|
||||
@@ -30,6 +32,9 @@ class SeriesMainDayOfWeekViewModel(
|
||||
private var isLast = false
|
||||
private val pageSize = 20
|
||||
|
||||
private val unknownErrorMessage: String
|
||||
get() = SodaLiveApplicationHolder.get().getString(R.string.common_error_unknown)
|
||||
|
||||
var dayOfWeek = SeriesPublishedDaysOfWeek.RANDOM
|
||||
set(newValue) {
|
||||
if (field != newValue) {
|
||||
@@ -67,17 +72,13 @@ class SeriesMainDayOfWeekViewModel(
|
||||
isLast = true
|
||||
}
|
||||
} else {
|
||||
if (it.message != null) {
|
||||
_toastLiveData.value = it.message
|
||||
} else {
|
||||
_toastLiveData.value = "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
||||
}
|
||||
_toastLiveData.value = it.message ?: unknownErrorMessage
|
||||
}
|
||||
},
|
||||
{
|
||||
_isLoading.value = false
|
||||
it.message?.let { message -> Logger.e(message) }
|
||||
_toastLiveData.value = "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
||||
_toastLiveData.value = unknownErrorMessage
|
||||
}
|
||||
)
|
||||
)
|
||||
|
||||
@@ -5,10 +5,12 @@ import androidx.lifecycle.MutableLiveData
|
||||
import com.orhanobut.logger.Logger
|
||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||
import kr.co.vividnext.sodalive.R
|
||||
import kr.co.vividnext.sodalive.audio_content.series.GetSeriesListResponse
|
||||
import kr.co.vividnext.sodalive.audio_content.series.main.SeriesMainRepository
|
||||
import kr.co.vividnext.sodalive.base.BaseViewModel
|
||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||
|
||||
class SeriesMainHomeViewModel(
|
||||
private val repository: SeriesMainRepository
|
||||
@@ -35,6 +37,9 @@ class SeriesMainHomeViewModel(
|
||||
val recommendSeriesLiveData: LiveData<List<GetSeriesListResponse.SeriesListItem>>
|
||||
get() = _recommendSeriesLiveData
|
||||
|
||||
private val unknownErrorMessage: String
|
||||
get() = SodaLiveApplicationHolder.get().getString(R.string.common_error_unknown)
|
||||
|
||||
fun fetchData() {
|
||||
_isLoading.value = true
|
||||
|
||||
@@ -52,19 +57,13 @@ class SeriesMainHomeViewModel(
|
||||
_completedSeriesLiveData.value = data.completedSeriesList
|
||||
_recommendSeriesLiveData.value = data.recommendSeriesList
|
||||
} else {
|
||||
if (it.message != null) {
|
||||
_toastLiveData.postValue(it.message)
|
||||
} else {
|
||||
_toastLiveData.postValue(
|
||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
||||
)
|
||||
}
|
||||
_toastLiveData.postValue(it.message ?: unknownErrorMessage)
|
||||
}
|
||||
},
|
||||
{
|
||||
_isLoading.value = false
|
||||
it.message?.let { message -> Logger.e(message) }
|
||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
||||
_toastLiveData.postValue(unknownErrorMessage)
|
||||
}
|
||||
)
|
||||
)
|
||||
@@ -83,17 +82,13 @@ class SeriesMainHomeViewModel(
|
||||
if (it.success && it.data != null) {
|
||||
_recommendSeriesLiveData.value = it.data
|
||||
} else {
|
||||
if (it.message != null) {
|
||||
_toastLiveData.value = it.message
|
||||
} else {
|
||||
_toastLiveData.value = "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
||||
}
|
||||
_toastLiveData.value = it.message ?: unknownErrorMessage
|
||||
}
|
||||
},
|
||||
{
|
||||
_isLoading.value = false
|
||||
it.message?.let { message -> Logger.e(message) }
|
||||
_toastLiveData.value = "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
||||
_toastLiveData.value = unknownErrorMessage
|
||||
}
|
||||
)
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user