package Ġcom . github . ny an f ant as ia . sh iz ur un otes . ui . comparison Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . lifecycle . ViewModel Provider Ċ import Ġandroidx . navigation . find Nav Controller Ċ import Ġcom . github . ny an f ant as ia . sh iz ur un otes . R Ċ import Ġcom . github . ny an f ant as ia . sh iz ur un otes . databinding . Fragment Rank Comparison Binding Ċ import Ġcom . github . ny an f ant as ia . sh iz ur un otes . ui . base . Material Spinner Adapter Ċ import Ġcom . github . ny an f ant as ia . sh iz ur un otes . ui . shared . Shared ViewModel Char a Ċ import Ġcom . github . ny an f ant as ia . sh iz ur un otes . ui . shared . Shared ViewModel Char a Factory Ċ Ċ class ĠRank Comparison Fragment Ġ: ĠFragment () Ġ{ ĊĊĠĠĠ Ġlateinit Ġvar Ġbinding : ĠFragment Rank Comparison Binding ĊĠĠĠ Ġlateinit Ġvar Ġshared Char a : ĠShared ViewModel Char a ĊĠĠĠ Ġlateinit Ġvar Ġcomparison ViewModel : ĠComparison ViewModel ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ Ġshared Char a Ġ= ĠViewModel Provider ( require Activity ())[ Shared ViewModel Char a :: class . java ] ĊĠĠĠĠĠĠĠ Ġcomparison ViewModel Ġ= ĠViewModel Provider ( this , ĠShared ViewModel Char a Factory ( shared Char a ))[ Comparison ViewModel :: class . java ] ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( ĊĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , Ġcontainer : ĠViewGroup ?, ĊĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ? ĊĠĠĠ Ġ): ĠView Ġ{ ĊĠĠĠĠĠĠĠ Ġbinding Ġ= ĠFragment Rank Comparison Binding . inflate ( layout Inflater , Ġcontainer , Ġfalse ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrank Comparison Toolbar . set Navigation OnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . find Nav Controller (). navigate Up () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdropdown Rank From . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Adapter ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMaterial Spinner Adapter ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Rank Comparison Fragment . require Context (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . layout . dropdown _ item _ char a _ list , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcomparison ViewModel . rank List . to Typed Array () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Text ( comparison ViewModel . rank List [ 1 ]. toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdropdown Rank To . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Adapter ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMaterial Spinner Adapter ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Rank Comparison Fragment . require Context (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . layout . dropdown _ item _ char a _ list , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcomparison ViewModel . rank List . to Typed Array () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Text ( comparison ViewModel . rank List [ 0 ]. toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcalculate Button . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġshared Char a . rank Comparison From Ġ= Ġdropdown Rank From . text . toString (). toInt () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġshared Char a . rank Comparison To Ġ= Ġdropdown Rank To . text . toString (). toInt () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . find Nav Controller (). navigate ( Rank Comparison Fragment Directions . action Nav Rank CompareTo Nav Compare List ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġreturn Ġbinding . root ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Resume () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Resume () ĊĠĠĠĠĠĠĠ Ġbinding . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdropdown Rank From . dismiss DropDown () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdropdown Rank To . dismiss DropDown () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ } Ċ