package Ġit . la face . f ant an ba Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroidx . fragment . app . commit Ċ import Ġcom . google . android . material . bottomnavigation . Bottom Navigation View Ċ import Ġit . la face . f ant an ba . Custom Fragment Factory . navigator Ċ import Ġit . la face . navigation . Page Ċ import Ġit . la face . news . presentation . News Fragment Ċ import Ġit . la face . player list . presentation . Player List Fragment Ċ import Ġit . la face . ranking . presentation . Ranking Fragment Ċ import Ġit . la face . schedule . presentation . Schedule Fragment Ċ Ċ @ Suppress (" UN CHECK ED _ CAST ") Ċ class ĠMainActivity Ġ: ĠAppCompatActivity ( R . layout . activity _ main ) Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġfirst Fragment Class ĊĠĠĠĠĠĠĠ Ġget () Ġ= ĠNews Fragment :: class . java ĊĊĠĠĠ Ġprivate Ġval Ġbottom Navigation Sections ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . news Ġto ĠNews Fragment :: class . java , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . players Ġto ĠPlayer List Fragment :: class . java , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . ranking Ġto ĠRank ing Fragment :: class . java , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . schedule Ġto ĠSchedule Fragment :: class . java , ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsupport FragmentManager . fragment Factory Ġ= ĠCustom Fragment Factory ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĊĠĠĠĠĠĠĠ Ġset Bottom Navigation () ĊĊĠĠĠĠĠĠĠ Ġif Ġ( savedInstanceState Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsupport FragmentManager . commit Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadd ( R . id . container View , Ġfirst Fragment Class Ġas ĠClass < Fragment >, Ġnull , Ġfirst Fragment Class . name ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġset Bottom Navigation () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġbottom Nav Ġ= ĠfindViewById < Bottom Navigation View >( R . id . bottom Navigation View ) ĊĠĠĠĠĠĠĠ Ġbottom Nav . setOn ItemSelected Listener Ġ{ Ġitem Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġnew Fragment Ġ= Ġbottom Navigation Sections [ item . itemId ] Ġas ĠClass < Fragment > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnavigator . clear Stack () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnavigator . navigate To ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdestination Ġ= ĠPage ( new Fragment ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠaddTo Stack Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ setOn ItemSelected Listener Ġtrue ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ