diff --git a/app/src/main/java/com/example/android/unscramble/ui/game/GameFragment.kt b/app/src/main/java/com/example/android/unscramble/ui/game/GameFragment.kt index f11d419901e01610c6b22e0f9426dee20642958a..e2f7662a00f85ee05770148d7709d2350fd37b31 100644 --- a/app/src/main/java/com/example/android/unscramble/ui/game/GameFragment.kt +++ b/app/src/main/java/com/example/android/unscramble/ui/game/GameFragment.kt @@ -22,7 +22,6 @@ import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import androidx.fragment.app.Fragment -import androidx.fragment.app.viewModels import com.example.android.unscramble.R import com.example.android.unscramble.databinding.GameFragmentBinding import com.google.android.material.dialog.MaterialAlertDialogBuilder diff --git a/app/src/main/java/com/example/android/unscramble/ui/game/GameViewModel.kt b/app/src/main/java/com/example/android/unscramble/ui/game/GameViewModel.kt index 96b8b8c80eace1eddfeb25a84efcd869a6048248..fa7009597c102dd4ef86072029033f2e4c2a836e 100644 --- a/app/src/main/java/com/example/android/unscramble/ui/game/GameViewModel.kt +++ b/app/src/main/java/com/example/android/unscramble/ui/game/GameViewModel.kt @@ -1,6 +1,8 @@ package com.example.android.unscramble.ui.game import android.util.Log +import androidx.lifecycle.LiveData +import androidx.lifecycle.MutableLiveData import androidx.lifecycle.ViewModel class GameViewModel: ViewModel() { @@ -11,8 +13,8 @@ class GameViewModel: ViewModel() { val currentWordCount: Int get() = _currentWordCount - private lateinit var _currentScrambledWord: String - val currentScrambledWord: String + private val _currentScrambledWord = MutableLiveData<String>() + val currentScrambledWord: LiveData<String> get() = _currentScrambledWord private var wordsList: MutableList<String> = mutableListOf() private lateinit var currentWord: String @@ -27,7 +29,7 @@ class GameViewModel: ViewModel() { Log.d("GameFragment", "GameViewModel destroyed!") } - fun getNextWord() { + private fun getNextWord() { currentWord = allWordsList.random() val tempWord = currentWord.toCharArray() tempWord.shuffle() @@ -37,7 +39,7 @@ class GameViewModel: ViewModel() { if (wordsList.contains(currentWord)) { getNextWord() } else { - _currentScrambledWord = String(tempWord) + _currentScrambledWord.value = String(tempWord) ++_currentWordCount wordsList.add(currentWord) }