From d7e4dec6e13ea570f5db79336acbbb122c1e6575 Mon Sep 17 00:00:00 2001 From: 62160052 <62160052@go.buu.ac.th> Date: Sat, 10 Sep 2022 17:44:02 +0700 Subject: [PATCH] Add data binding variables --- .../com/example/android/unscramble/ui/game/GameFragment.kt | 5 +++++ app/src/main/res/layout/game_fragment.xml | 7 ++++++- 2 files changed, 11 insertions(+), 1 deletion(-) 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 e9ee27f..45c4dc7 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 @@ -62,7 +62,9 @@ class GameFragment : Fragment() { override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) + binding.gameViewModel = viewModel + binding.maxNoOfWords = MAX_NO_OF_WORDS // Setup a click listener for the Submit and Skip buttons. binding.submit.setOnClickListener { onSubmitWord() } binding.skip.setOnClickListener { onSkipWord() } @@ -81,6 +83,9 @@ class GameFragment : Fragment() { ) { newScore -> binding.score.text = getString(R.string.score, newScore) } + // Specify the fragment view as the lifecycle owner of the binding. + // This is used so that the binding can observe LiveData updates + binding.lifecycleOwner = viewLifecycleOwner } /* diff --git a/app/src/main/res/layout/game_fragment.xml b/app/src/main/res/layout/game_fragment.xml index e9629ff..a30f290 100644 --- a/app/src/main/res/layout/game_fragment.xml +++ b/app/src/main/res/layout/game_fragment.xml @@ -19,7 +19,12 @@ xmlns:tools="http://schemas.android.com/tools"> <data> - + <variable + name="gameViewModel" + type="com.example.android.unscramble.ui.game.GameViewModel" /> + <variable + name="maxNoOfWords" + type="int" /> </data> <ScrollView -- GitLab