From 7e4202db1be3f2600924f0b958df65e7523b8ee6 Mon Sep 17 00:00:00 2001 From: klaus Date: Mon, 1 Dec 2025 18:03:47 +0900 Subject: [PATCH] =?UTF-8?q?TextMessageFragment=20=EB=AC=B8=EC=9E=90?= =?UTF-8?q?=EC=97=B4=20=EB=A6=AC=EC=86=8C=EC=8A=A4=ED=99=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sodalive/message/text/TextMessageFragment.kt | 7 ++++++- .../sodalive/message/text/TextMessageViewModel.kt | 14 +++++++++----- 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/kr/co/vividnext/sodalive/message/text/TextMessageFragment.kt b/app/src/main/java/kr/co/vividnext/sodalive/message/text/TextMessageFragment.kt index 103de8ae..43de8992 100644 --- a/app/src/main/java/kr/co/vividnext/sodalive/message/text/TextMessageFragment.kt +++ b/app/src/main/java/kr/co/vividnext/sodalive/message/text/TextMessageFragment.kt @@ -128,7 +128,12 @@ class TextMessageFragment : BaseFragment( @SuppressLint("NotifyDataSetChanged") private fun bindData() { viewModel.toastLiveData.observe(viewLifecycleOwner) { - it?.let { Toast.makeText(requireActivity(), it, Toast.LENGTH_LONG).show() } + it?.let { toast -> + val message = toast.message + val text = message ?: toast.resId?.let { resId -> getString(resId) } + + text?.let { Toast.makeText(requireActivity(), it, Toast.LENGTH_LONG).show() } + } } viewModel.isLoading.observe(viewLifecycleOwner) { diff --git a/app/src/main/java/kr/co/vividnext/sodalive/message/text/TextMessageViewModel.kt b/app/src/main/java/kr/co/vividnext/sodalive/message/text/TextMessageViewModel.kt index 86e7f1b0..3a9b15e2 100644 --- a/app/src/main/java/kr/co/vividnext/sodalive/message/text/TextMessageViewModel.kt +++ b/app/src/main/java/kr/co/vividnext/sodalive/message/text/TextMessageViewModel.kt @@ -7,9 +7,11 @@ import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.schedulers.Schedulers 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.message.GetTextMessageResponse import kr.co.vividnext.sodalive.message.MessageBox import kr.co.vividnext.sodalive.message.MessageRepository +import kr.co.vividnext.sodalive.R class TextMessageViewModel(private val repository: MessageRepository) : BaseViewModel() { private val _messageBoxLiveData = MutableLiveData(MessageBox.RECEIVE) @@ -21,8 +23,8 @@ class TextMessageViewModel(private val repository: MessageRepository) : BaseView val getMessagesLiveData: LiveData> get() = _getMessagesLiveData - private val _toastLiveData = MutableLiveData() - val toastLiveData: LiveData + private val _toastLiveData = MutableLiveData() + val toastLiveData: LiveData get() = _toastLiveData var page = 1 @@ -88,10 +90,10 @@ class TextMessageViewModel(private val repository: MessageRepository) : BaseView } } else { if (it.message != null) { - _toastLiveData.postValue(it.message) + _toastLiveData.postValue(ToastMessage(message = it.message)) } else { _toastLiveData.postValue( - "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요." + ToastMessage(resId = R.string.common_error_unknown) ) } } @@ -99,7 +101,9 @@ class TextMessageViewModel(private val repository: MessageRepository) : BaseView }, { it.message?.let { message -> Logger.e(message) } - _toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.") + _toastLiveData.postValue( + ToastMessage(resId = R.string.common_error_unknown) + ) _isLoading.postValue(false) } )