diff --git a/app/src/main/java/com/sopetit/softie/ui/onboarding/routinechoice/RoutineChoiceAdapter.kt b/app/src/main/java/com/sopetit/softie/ui/onboarding/routinechoice/RoutineChoiceAdapter.kt index 3001e759..4cf17bbf 100644 --- a/app/src/main/java/com/sopetit/softie/ui/onboarding/routinechoice/RoutineChoiceAdapter.kt +++ b/app/src/main/java/com/sopetit/softie/ui/onboarding/routinechoice/RoutineChoiceAdapter.kt @@ -27,6 +27,8 @@ class RoutineChoiceAdapter : ListAdapter get() = _isRoutineNoticeVisible + var selectPosition = ArrayList() + inner class RoutineChoiceViewHolder(private val binding: ItemOnboardingChoiceRoutineBinding) : RecyclerView.ViewHolder(binding.root) { fun onBind(data: Routine) { @@ -128,6 +130,36 @@ class RoutineChoiceAdapter : ListAdapter 0) { diff --git a/app/src/main/java/com/sopetit/softie/ui/setting/SettingUserExitFragment.kt b/app/src/main/java/com/sopetit/softie/ui/setting/SettingUserExitFragment.kt index 591892b9..77cf4489 100644 --- a/app/src/main/java/com/sopetit/softie/ui/setting/SettingUserExitFragment.kt +++ b/app/src/main/java/com/sopetit/softie/ui/setting/SettingUserExitFragment.kt @@ -1,8 +1,6 @@ package com.sopetit.softie.ui.setting -import android.content.Context import android.content.Intent -import android.content.SharedPreferences import android.os.Bundle import android.text.SpannableStringBuilder import android.text.Spanned @@ -27,7 +25,6 @@ class SettingUserExitFragment : BindingFragment(R.layout.fragment_setting_user_exit) { private lateinit var viewModel: SettingViewModel - private lateinit var sharedPreferences: SharedPreferences override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) @@ -35,11 +32,7 @@ class SettingUserExitFragment : viewModel = ViewModelProvider(requireActivity()).get(SettingViewModel::class.java) binding.viewModel = viewModel - sharedPreferences = - this.requireActivity().getSharedPreferences("user", Context.MODE_PRIVATE) - val bearType = sharedPreferences.getString("bearType", BROWN) - - initSetBear(bearType) + initSetBear() initSetSpeechText() initSetClickBackBtn() initSetClickExitBtn() @@ -62,12 +55,15 @@ class SettingUserExitFragment : } } - private fun initSetBear(bearType: String?) { - when (bearType) { - BROWN -> setBearImage(R.drawable.ic_bear_brown_crying) - GRAY -> setBearImage(R.drawable.ic_bear_gray_crying) - RED -> setBearImage(R.drawable.ic_bear_red_crying) - WHITE -> setBearImage(R.drawable.ic_bear_panda_crying) + private fun initSetBear() { + viewModel.setCryingBearType() + viewModel.bearType.observe(viewLifecycleOwner) { bearType -> + when (bearType) { + BROWN -> setBearImage(R.drawable.ic_bear_brown_crying) + GRAY -> setBearImage(R.drawable.ic_bear_gray_crying) + RED -> setBearImage(R.drawable.ic_bear_red_crying) + WHITE -> setBearImage(R.drawable.ic_bear_panda_crying) + } } } diff --git a/app/src/main/java/com/sopetit/softie/ui/setting/SettingViewModel.kt b/app/src/main/java/com/sopetit/softie/ui/setting/SettingViewModel.kt index 0cdb890a..95f3892f 100644 --- a/app/src/main/java/com/sopetit/softie/ui/setting/SettingViewModel.kt +++ b/app/src/main/java/com/sopetit/softie/ui/setting/SettingViewModel.kt @@ -4,10 +4,15 @@ import androidx.lifecycle.LiveData import androidx.lifecycle.MutableLiveData import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope +import com.sopetit.softie.domain.usecase.GetBearTypeUseCase import com.sopetit.softie.domain.usecase.InitSIgnUpStateUseCase import com.sopetit.softie.domain.usecase.InitTokenUseCase import com.sopetit.softie.domain.usecase.auth.DeleteAuthUseCase import com.sopetit.softie.domain.usecase.auth.LogOutUseCase +import com.sopetit.softie.ui.onboarding.OnboardingViewModel.Companion.BROWN +import com.sopetit.softie.ui.onboarding.OnboardingViewModel.Companion.GRAY +import com.sopetit.softie.ui.onboarding.OnboardingViewModel.Companion.RED +import com.sopetit.softie.ui.onboarding.OnboardingViewModel.Companion.WHITE import com.sopetit.softie.ui.setting.SettingActivity.Companion.SETTING_INIT import dagger.hilt.android.lifecycle.HiltViewModel import kotlinx.coroutines.launch @@ -19,7 +24,8 @@ class SettingViewModel @Inject constructor( private val deleteAuthUseCase: DeleteAuthUseCase, private val logOutUseCase: LogOutUseCase, private val initSIgnUpStateUseCase: InitSIgnUpStateUseCase, - private val initTokenUseCase: InitTokenUseCase + private val initTokenUseCase: InitTokenUseCase, + private val getBearTypeUseCase: GetBearTypeUseCase ) : ViewModel() { private val _settingFragment: MutableLiveData = MutableLiveData(SETTING_INIT) @@ -34,10 +40,24 @@ class SettingViewModel @Inject constructor( val isLogOutResponse: LiveData get() = _isLogOutResponse + private val _bearType: MutableLiveData = MutableLiveData() + val bearType: LiveData + get() = _bearType + fun setSettingFragment(clickFragment: String) { _settingFragment.value = clickFragment } + fun setCryingBearType() { + when (getBearTypeUseCase()) { + BROWN -> _bearType.value = BROWN + GRAY -> _bearType.value = GRAY + RED -> _bearType.value = RED + WHITE -> _bearType.value = WHITE + else -> _bearType.value = BROWN + } + } + fun setDeleteAuth() { viewModelScope.launch { deleteAuthUseCase() diff --git a/app/src/main/res/layout/fragment_setting_init.xml b/app/src/main/res/layout/fragment_setting_init.xml index e6096ea3..672d41ba 100644 --- a/app/src/main/res/layout/fragment_setting_init.xml +++ b/app/src/main/res/layout/fragment_setting_init.xml @@ -20,7 +20,7 @@ android:layout_width="0dp" android:layout_height="wrap_content" android:clickable="true" - android:layout_marginTop="24dp" + android:layout_marginTop="0dp" app:layout_constraintTop_toTopOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent">