package Ġinfo . spread code . bottomnavigation view Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . MenuItem Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġcom . google . android . material . bottomnavigation . Bottom Navigation View Ċ import Ġcom . google . android . material . navigation . NavigationBar View Ċ import Ġkotlinx . android . synt hetic . main . activity _ bottom _ navigation .* Ċ Ċ class ĠBottom Navigation Activity Ġ: ĠAppCompatActivity (), ĊĠĠĠ ĠNavigation Bar View . On ItemSelected Listener Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġhome Fragment Ġ= ĠHome Fragment () ĊĠĠĠ Ġprivate Ġval Ġtrend ing Fragment Ġ= ĠT rend ing Fragment () ĊĠĠĠ Ġprivate Ġval Ġfavour ite Fragment Ġ= ĠF avour ite Fragment () ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġactive Fragment : ĠFragment ĊĊĠĠĠ Ġprivate Ġval Ġfragment Manager Ġ= Ġsupport FragmentManager ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ bottom _ navigation ) ĊĊĠĠĠĠĠĠĠ Ġ// ĠSet Ġup Ġinitial Ġvalue Ġto Ġviews Ġand Ġadd Ġviews Ġto Ġlistener ĊĠĠĠĠĠĠĠ ĠsetUp Views And Listeners () ĊĊĠĠĠĠĠĠĠ Ġ// ĠSet Ġup Ġinitial Ġfragment Ġtransaction ĊĠĠĠĠĠĠĠ ĠsetUp Fragment Transaction () ĊĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Navigation ItemSelected ( item : ĠMenuItem ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġsupport ActionBar !!. title Ġ= Ġitem . title ĊĠĠĠĠĠĠĠ Ġwhen Ġ( item . itemId ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . home _ navigation Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfragment Manager . beginTransaction (). hide ( active Fragment ). show ( home Fragment ). commit () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactive Fragment Ġ= Ġhome Fragment ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . trend ing _ navigation Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfragment Manager . beginTransaction (). hide ( active Fragment ). show ( trend ing Fragment ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. commit () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactive Fragment Ġ= Ġtrend ing Fragment ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . fav our ite _ navigation Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfragment Manager . beginTransaction (). hide ( active Fragment ). show ( fav our ite Fragment ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. commit () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactive Fragment Ġ= Ġfavour ite Fragment ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠSet Ġup Ġinitial Ġvalue Ġto Ġviews Ġand Ġattach Ġviews Ġto Ġlistener ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprivate Ġfun ĠsetUp Views And Listeners () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// ĠAssign Ġfirst Ġfragment Ġto Ġthe Ġactive Ġfragment ĊĠĠĠĠĠĠĠ Ġactive Fragment Ġ= Ġhome Fragment ĊĊĠĠĠĠĠĠĠ Ġ// ĠAttach Ġbottom Ġnavigation Ġview Ġto Ġlistener ĊĠĠĠĠĠĠĠ Ġbottom _ navigation _ view . setOn ItemSelected Listener ( this ) ĊĊĠĠĠĠĠĠĠ Ġ// Ġset Ġfirst Ġfragment Ġtitle Ġto Ġthe Ġtoolbar Ġtitle ĊĠĠĠĠĠĠĠ Ġsupport ActionBar !!. title Ġ= ĠgetString ( R . string . home _ fragment _ bottom _ navigation _ title ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠAttach Ġfragment Ġto Ġthe ĠFragment Manager , Ġhide Ġand Ġcommit ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprivate Ġfun ĠsetUp Fragment Transaction () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġfragment Manager . beginTransaction (). add ( R . id . fragment _ container , Ġfavour ite Fragment , Ġ" 3 ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. hide ( fav our ite Fragment ). commit () ĊĊĠĠĠĠĠĠĠ Ġfragment Manager . beginTransaction (). add ( R . id . fragment _ container , Ġtrend ing Fragment , Ġ" 2 ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. hide ( trend ing Fragment ). commit () ĊĊĠĠĠĠĠĠĠ Ġfragment Manager . beginTransaction (). add ( R . id . fragment _ container , Ġhome Fragment , Ġ" 1 "). commit () ĊĠĠĠ Ġ} Ċ Ċ } Ċ