package Ġcom . example . words app . fragments Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroidx . recyclerview . widget . Divider Item Decoration Ċ import Ġandroidx . recyclerview . widget . Linear LayoutManager Ċ import Ġcom . example . words app . adapters . Word Adapter Ċ import Ġcom . example . words app . databinding . Fragment Word List Binding Ċ Ċ class ĠWord List Fragment Ġ: ĠFragment () Ġ{ ĊĊĠĠĠ Ġprivate Ġvar Ġ_ binding : ĠFragment Word List Binding ? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġval Ġbinding Ġget () Ġ= Ġ_ binding !! ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġletter Id : ĠString ĊĊĠĠĠ Ġ// ĠWe Ġwill Ġuse Ġit Ġto Ġcreate Ġa ĠSingle ĠInstance Ġof Ġthe ĠClass Ġto Ġkeep Ġrecord Ġof Ġall Ġshare able ĠData - Bundle ĊĠĠĠ Ġ// Ġcompanion Ġ= Ġassociated Ġwith Ġactive Ġclass Ġ( Detail Activity ) ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠLETTER Ġ= Ġ" letter " ĊĊĠĠĠĠĠĠĠ Ġ// ĠThis Ġis Ġthe Ġbase ĠURL Ġfor Ġa ĠGoogle Ġsearch . ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠSEARCH _ PREFIX Ġ= Ġ" https :// www . google . com / search ? q =" ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠBecause Ġit 's Ġpossible Ġfor Ġarguments Ġto Ġbe Ġoptional , Ġnotice Ġyou Ġcall Ġlet () Ġand Ġpass Ġin Ġa Ġlambda . ĊĠĠĠĠĠĠĠĠ Ġ* ĠThis Ġcode Ġwill Ġexecute Ġassuming Ġarguments Ġis Ġnot Ġnull , Ġpassing Ġin Ġthe Ġnon Ġnull Ġarguments Ġfor Ġthe Ġit Ġparameter . ĊĠĠĠĠĠĠĠĠ Ġ* ĠIf Ġarguments Ġis Ġnull , Ġhowever , Ġthe Ġlambda Ġwill Ġnot Ġexecute . ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġarguments ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġletter Id Ġ= Ġit . getString ( LET TER ). toString () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( ĊĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , ĊĠĠĠĠĠĠĠ Ġcontainer : ĠViewGroup ?, ĊĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ? ĊĠĠĠ Ġ): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġ_ binding Ġ= ĠFragment Word List Binding . inflate ( in flater , Ġcontainer , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġreturn Ġbinding . root ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView , ĠsavedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġre cyclerView Ġ= Ġbinding . re cyclerView ĊĠĠĠĠĠĠĠ Ġre cyclerView . layout Manager Ġ= ĠLinearLayoutManager ( require Context ()) ĊĠĠĠĠĠĠĠ Ġre cyclerView . adapter Ġ= ĠWord Adapter ( letter Id , Ġrequire Context ()) ĊĠĠĠĠĠĠĠ Ġ// Ġre cyclerView . adapter Ġ= ĠWord Adapter ( activity ?. intent ?. extras ?. getString ( LET TER ). toString (), Ġrequire Context ()) ĊĊĠĠĠĠĠĠĠ Ġre cyclerView . addItem Decoration ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠDiv ider Item Decoration ( context , ĠDiv ider Item Decoration . VERTICAL ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ// Ġ Ġreset Ġthe Ġ_ binding Ġvariable Ġin Ġon Destroy View () ĊĠĠĠ Ġoverride Ġfun Ġon Destroy View () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Destroy View () ĊĠĠĠĠĠĠĠ Ġ_ binding Ġ= Ġnull ĊĠĠĠ Ġ} ĊĊ Ċ }