package Ġcom . cent aur y . catalog ue movie . ui . main Ċ Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . Menu Ċ import Ġandroid . view . MenuItem Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġandroidx . databinding . Data Binding Util . set ContentView Ċ import Ġandroidx . view pager 2 . widget . ViewPager 2 Ċ import Ġcom . cent aur y . catalog ue movie . R Ċ import Ġcom . cent aur y . catalog ue movie . databinding . Activity Main Binding Ċ import Ġcom . cent aur y . catalog ue movie . ui . movie . Movie Fragment Ċ import Ġcom . cent aur y . catalog ue movie . ui . tv show . TV Show Fragment Ċ import Ġcom . cent aur y . catalog ue movie . utils . ViewPager Adapter Ċ import Ġcom . cent aur y . catalog ue movie . utils . check Connection Ċ import Ġcom . google . android . material . tabs . Tab Layout Mediator Ċ Ċ class ĠMainActivity Ġ: ĠAppCompatActivity () Ġ{ ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġbinding : ĠActivity Main Binding ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ Ġbinding Ġ= ĠsetContentView ( this , ĠR . layout . activity _ main ) ĊĊĠĠĠĠĠĠĠ Ġset Support ActionBar ( binding . toolbar ) ĊĠĠĠĠĠĠĠ Ġsupport ActionBar ?. set Display Show Title Enabled ( false ) ĊĊĠĠĠĠĠĠĠ Ġcheck Connection ( this ) ĊĊĠĠĠĠĠĠĠ Ġsetup ViewPager ( binding . view Pager ) ĊĠĠĠĠĠĠĠ ĠTab Layout Mediator ( binding . tabs , Ġbinding . view Pager ) Ġ{ Ġtab , Ġposition Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( position ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 0 Ġ-> Ġtab . text Ġ= ĠgetString ( R . string . title _ movie ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 1 Ġ-> Ġtab . text Ġ= ĠgetString ( R . string . title _ tv _ show ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}. attach () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġsetup ViewPager ( view Pager : ĠView Pager 2 ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview Pager Adapter Ġ= ĠView Pager Adapter ( this ) ĊĠĠĠĠĠĠĠ Ġview Pager . adapter Ġ= Ġview Pager Adapter ĊĊĠĠĠĠĠĠĠ Ġview Pager Adapter . add Fragment ( Movie Fragment ()) ĊĠĠĠĠĠĠĠ Ġview Pager Adapter . add Fragment ( TV Show Fragment ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate Options Menu ( menu : ĠMenu ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġmenu Inflater . inflate ( R . menu . main _ menu , Ġmenu ) ĊĠĠĠĠĠĠĠ Ġreturn Ġsuper . onCreate Options Menu ( menu ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Options ItemSelected ( item : ĠMenuItem ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ( item . itemId ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . action _ search Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġselected Ġ= Ġbinding . tabs . selected Tab Position Ġ+ Ġ 1 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIntent ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠClass . forName (" com . cent aur y . catalog ue movie . search . Search Activity ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput Extra ( SEARCH _ MOV IE , Ġselected ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . action _ favorite Ġ-> ĠstartActivity ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIntent ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠClass . forName (" com . cent aur y . catalog ue movie . favorite . Favorite Activity ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġsuper . on Options ItemSelected ( item ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Resume () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Resume () ĊĠĠĠĠĠĠĠ Ġcheck Connection ( this ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Back Pressed () Ġ{ ĊĠĠĠĠĠĠĠ Ġfinish () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠSEARCH _ MOV IE Ġ= Ġ" search _ movie " ĊĠĠĠ Ġ} Ċ }