package Ġpaper works . studio . test tab android Ċ Ċ import Ġandroid . support . v 4 . app . Fragment Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . support . design . widget . Bottom Navigation View Ċ import Ġandroid . support . v 7 . app . AppCompatActivity Ċ import Ġkotlinx . android . synt hetic . main . activity _ main .* Ċ Ċ class ĠMainActivity Ġ: ĠAppCompatActivity () Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġm On Navigation ItemSelected Listener Ġ= ĠBottom Navigation View . On Navigation ItemSelected Listener Ġ{ Ġitem Ġ-> ĊĠĠĠĠĠĠĠ Ġwhen Ġ( item . itemId ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . navigation _ dash Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdash Fragment Ġ= ĠDash Fragment . newInstance (" Dash ", Ġ" Cool ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġopen Fragment ( dash Fragment ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ On Navigation ItemSelected Listener Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . navigation _ lott ie Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlo tt ie Fragment Ġ= ĠL ot tie Fragment . newInstance (" Lot tie ", Ġ" Cool Ġagain ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġopen Fragment ( lott ie Fragment ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ On Navigation ItemSelected Listener Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . navigation _ canvas Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcanvas Fragment Ġ= ĠCanvas Fragment . newInstance (" Canvas ", Ġ" Cool Ġthird ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġopen Fragment ( canvas Fragment ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ On Navigation ItemSelected Listener Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . navigation _ list Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlist Canvas Fragment Ġ= ĠList Canvas Fragment . newInstance (" Canvas ", Ġ" Cool Ġthird ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġopen Fragment ( list Canvas Fragment ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ On Navigation ItemSelected Listener Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ main ) ĊĊĠĠĠĠĠĠĠ Ġnavigation . setOn Navigation ItemSelected Listener ( m On Navigation ItemSelected Listener ) ĊĊĠĠĠĠĠĠĠ Ġopen Fragment ( Dash Fragment . newInstance (" Dash ", Ġ" Cool ")) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġopen Fragment ( fragment : ĠFragment ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtransaction Ġ= Ġsupport FragmentManager . beginTransaction () ĊĠĠĠĠĠĠĠ Ġtransaction . replace ( R . id . container , Ġfragment ) ĊĠĠĠĠĠĠĠ Ġtransaction . addTo Back Stack ( null ) ĊĠĠĠĠĠĠĠ Ġtransaction . commit () ĊĠĠĠ Ġ} Ċ } Ċ