닉네임 변경 화면 문자열 리소스화
This commit is contained in:
@@ -6,6 +6,7 @@ import android.widget.Toast
|
||||
import com.jakewharton.rxbinding4.widget.textChanges
|
||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||
import kr.co.vividnext.sodalive.R
|
||||
import kr.co.vividnext.sodalive.base.BaseActivity
|
||||
import kr.co.vividnext.sodalive.common.LoadingDialog
|
||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||
@@ -31,7 +32,7 @@ class NicknameUpdateActivity : BaseActivity<ActivityNicknameUpdateBinding>(
|
||||
}
|
||||
|
||||
override fun setupView() {
|
||||
binding.toolbar.tvBack.text = "닉네임 변경"
|
||||
binding.toolbar.tvBack.text = getString(R.string.screen_nickname_update_title)
|
||||
binding.toolbar.tvBack.setOnClickListener { finish() }
|
||||
|
||||
loadingDialog = LoadingDialog(this, layoutInflater)
|
||||
@@ -59,8 +60,9 @@ class NicknameUpdateActivity : BaseActivity<ActivityNicknameUpdateBinding>(
|
||||
)
|
||||
|
||||
viewModel.toastLiveData.observe(this) {
|
||||
it?.let {
|
||||
Toast.makeText(applicationContext, it, Toast.LENGTH_LONG).show()
|
||||
val message = it?.resId?.let(::getString) ?: it?.message
|
||||
message?.let { text ->
|
||||
Toast.makeText(applicationContext, text, Toast.LENGTH_LONG).show()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -72,11 +74,12 @@ class NicknameUpdateActivity : BaseActivity<ActivityNicknameUpdateBinding>(
|
||||
}
|
||||
}
|
||||
|
||||
viewModel.priceLiveData.observe(this) {
|
||||
if (it > 0) {
|
||||
binding.tvChangeNickname.text = "${it}캔으로 닉네임 변경하기"
|
||||
viewModel.priceLiveData.observe(this) { price ->
|
||||
if (price > 0) {
|
||||
binding.tvChangeNickname.text =
|
||||
getString(R.string.screen_nickname_update_submit_with_can, price)
|
||||
} else {
|
||||
binding.tvChangeNickname.text = "닉네임 변경하기"
|
||||
binding.tvChangeNickname.text = getString(R.string.screen_nickname_update_submit)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,8 +5,10 @@ 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.base.BaseViewModel
|
||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||
import kr.co.vividnext.sodalive.common.ToastMessage
|
||||
import kr.co.vividnext.sodalive.mypage.profile.ProfileUpdateRequest
|
||||
import kr.co.vividnext.sodalive.user.UserRepository
|
||||
|
||||
@@ -21,8 +23,8 @@ class NicknameUpdateViewModel(private val repository: UserRepository) : BaseView
|
||||
val isLoading: LiveData<Boolean>
|
||||
get() = _isLoading
|
||||
|
||||
private val _toastLiveData = MutableLiveData<String?>()
|
||||
val toastLiveData: LiveData<String?>
|
||||
private val _toastLiveData = MutableLiveData<ToastMessage?>()
|
||||
val toastLiveData: LiveData<ToastMessage?>
|
||||
get() = _toastLiveData
|
||||
|
||||
var isCheckedNickname = false
|
||||
@@ -40,19 +42,17 @@ class NicknameUpdateViewModel(private val repository: UserRepository) : BaseView
|
||||
if (it.success && it.data != null) {
|
||||
_priceLiveData.value = it.data.price
|
||||
} else {
|
||||
if (it.message != null) {
|
||||
_toastLiveData.postValue(it.message)
|
||||
} else {
|
||||
_toastLiveData.postValue(
|
||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
||||
)
|
||||
}
|
||||
_toastLiveData.postValue(
|
||||
it.message?.let { message ->
|
||||
ToastMessage(message = message)
|
||||
} ?: ToastMessage(resId = R.string.common_error_unknown)
|
||||
)
|
||||
}
|
||||
},
|
||||
{
|
||||
_isLoading.value = false
|
||||
it.message?.let { message -> Logger.e(message) }
|
||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
||||
_toastLiveData.postValue(ToastMessage(resId = R.string.common_error_unknown))
|
||||
}
|
||||
)
|
||||
)
|
||||
@@ -68,31 +68,31 @@ class NicknameUpdateViewModel(private val repository: UserRepository) : BaseView
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(
|
||||
{
|
||||
_isLoading.value = false
|
||||
if (it.success) {
|
||||
isCheckedNickname = true
|
||||
_toastLiveData.postValue("사용가능한 닉네임 입니다.")
|
||||
} else {
|
||||
if (it.message != null) {
|
||||
_toastLiveData.postValue(it.message)
|
||||
} else {
|
||||
_toastLiveData.postValue(
|
||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
||||
)
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
_isLoading.value = false
|
||||
it.message?.let { message -> Logger.e(message) }
|
||||
_isLoading.value = false
|
||||
if (it.success) {
|
||||
isCheckedNickname = true
|
||||
_toastLiveData.postValue(
|
||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
||||
ToastMessage(resId = R.string.msg_nickname_update_available)
|
||||
)
|
||||
} else {
|
||||
_toastLiveData.postValue(
|
||||
it.message?.let { message ->
|
||||
ToastMessage(message = message)
|
||||
} ?: ToastMessage(resId = R.string.common_error_unknown)
|
||||
)
|
||||
}
|
||||
)
|
||||
},
|
||||
{
|
||||
_isLoading.value = false
|
||||
it.message?.let { message -> Logger.e(message) }
|
||||
_toastLiveData.postValue(ToastMessage(resId = R.string.common_error_unknown))
|
||||
}
|
||||
)
|
||||
)
|
||||
} else {
|
||||
_toastLiveData.postValue(
|
||||
ToastMessage(resId = R.string.msg_nickname_update_input_required)
|
||||
)
|
||||
} else {
|
||||
_toastLiveData.postValue("닉네임을 입력하세요.")
|
||||
}
|
||||
}
|
||||
|
||||
@@ -111,32 +111,32 @@ class NicknameUpdateViewModel(private val repository: UserRepository) : BaseView
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(
|
||||
{
|
||||
_isLoading.value = false
|
||||
if (it.success) {
|
||||
_toastLiveData.postValue("닉네임이 변경되었습니다.")
|
||||
SharedPreferenceManager.nickname = nickname
|
||||
onSuccess()
|
||||
} else {
|
||||
if (it.message != null) {
|
||||
_toastLiveData.postValue(it.message)
|
||||
} else {
|
||||
_toastLiveData.postValue(
|
||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
||||
)
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
_isLoading.value = false
|
||||
it.message?.let { message -> Logger.e(message) }
|
||||
_isLoading.value = false
|
||||
if (it.success) {
|
||||
_toastLiveData.postValue(
|
||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
||||
ToastMessage(resId = R.string.msg_nickname_update_success)
|
||||
)
|
||||
SharedPreferenceManager.nickname = nickname
|
||||
onSuccess()
|
||||
} else {
|
||||
_toastLiveData.postValue(
|
||||
it.message?.let { message ->
|
||||
ToastMessage(message = message)
|
||||
} ?: ToastMessage(resId = R.string.common_error_unknown)
|
||||
)
|
||||
}
|
||||
)
|
||||
},
|
||||
{
|
||||
_isLoading.value = false
|
||||
it.message?.let { message -> Logger.e(message) }
|
||||
_toastLiveData.postValue(ToastMessage(resId = R.string.common_error_unknown))
|
||||
}
|
||||
)
|
||||
)
|
||||
} else {
|
||||
_toastLiveData.postValue(
|
||||
ToastMessage(resId = R.string.msg_nickname_update_check_required)
|
||||
)
|
||||
} else {
|
||||
_toastLiveData.postValue("닉네임 중복체크를 해주세요.")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user