package Ġcom . app . cv Ċ Ċ import Ġandroid . annotation . Suppress Lint Ċ import Ġandroid . content . Intent Ċ import Ġandroid . content . SharedPreferences Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . Menu Ċ import Ġandroid . view . MenuItem Ċ import Ġandroid . widget . Button Ċ import Ġandroid . widget . TextView Ċ import Ġandroid . widget . Toast Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġandroidx . appcompat . view . menu . Menu Builder Ċ import Ġandroidx . view pager . widget . ViewPager Ċ import Ġkotlinx . android . synt hetic . main . activity _ main .* ĊĊ Ċ class ĠMainActivity Ġ: ĠAppCompatActivity () Ġ{ ĊĊĠĠĠ Ġvar Ġtxt Info : ĠTextView ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġbtn Log Out : ĠButton ? Ġ= Ġnull ĊĊĠĠĠ Ġvar Ġsh p : ĠSharedPreferences ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġsh p Editor : ĠSharedPreferences . Editor ? Ġ= Ġnull ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ main ) ĊĠĠĠĠĠĠĠ Ġset Support ActionBar ( toolbar ) ĊĠĠĠĠĠĠĠ Ġ// support ActionBar ?. set Display Home As Up Enabled ( true ) ĊĠĠĠĠĠĠĠ Ġsetup ViewPager ( view Pager ) ĊĠĠĠĠĠĠĠ ĠsetUp Icons () ĊĊĠĠĠĠĠĠĠ Ġtxt Info Ġ= ĠfindViewById ( R . id . txt Info ) ĊĠĠĠĠĠĠĠ Ġbtn Log Out Ġ= ĠfindViewById ( R . id . btn Log Out ) ĊĠĠĠĠĠĠĠ Ġsh p Ġ= Ġget SharedPreferences (" my Preferences ", ĠMODE _ PRIVATE ) ĊĠĠĠĠĠĠĠ Ġcheck Login () ĊĊĠĠĠĠĠĠĠ Ġbtn Log Out ?. setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlogout () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġprivate Ġfun Ġsetup ViewPager ( view Pager : ĠView Pager ){ Ġ// private Ġmethod Ġto Ġset Ġup Ġthe Ġswipe Ġviews ĊĠĠĠĠĠĠĠ Ġval Ġ Ġview Pager Adapter = ViewPager Adapter ( support FragmentManager ) ĊĠĠĠĠĠĠĠ Ġview Pager Adapter . add Fragment ( Home Fragment (), Ġ" Home ") ĊĠĠĠĠĠĠĠ Ġview Pager Adapter . add Fragment ( Education (), Ġ" Education ") ĊĠĠĠĠĠĠĠ Ġview Pager Adapter . add Fragment ( Skills (), Ġ" Skills ") ĊĠĠĠĠĠĠĠ Ġview Pager Adapter . add Fragment ( Work (), Ġ" Work ") Ċ /* ĠĠĠĠĠĠĠ ĠIf Ġthese Ġare Ġadded ĠH obb ies Ġopens Ġbut Ġthe Ġother Ġtwo Ġwon 't , Ġso Ġsomething Ġwrong Ġwith Ġfragments Ċ view Pager Adapter . add Fragment ( H obb ies (), Ġ" H obb ies ") ĊĠĠĠĠĠĠĠ Ġview Pager Adapter . add Fragment ( References (), Ġ" References ") ĊĠĠĠĠĠĠĠ Ġview Pager Adapter . add Fragment ( Contact (), Ġ" Contact ") */ ĊĊĠĠĠĠĠĠĠ Ġview Pager . adapter = view Pager Adapter ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun ĠsetUp Icons (){ ĊĠĠĠĠĠĠĠ Ġtab Layout . setup With ViewPager ( view Pager ) ĊĠĠĠĠĠĠĠ Ġtab Layout . get Tab At ( 0 ) !!. setIcon ( R . drawable . icon _ home ) ĊĠĠĠĠĠĠĠ Ġtab Layout . get Tab At ( 1 ) !!. setIcon ( R . drawable . icon _ education ) ĊĠĠĠĠĠĠĠ Ġtab Layout . get Tab At ( 2 ) !!. setIcon ( R . drawable . icon _ skills ) ĊĠĠĠĠĠĠĠ Ġtab Layout . get Tab At ( 3 ) !!. setIcon ( R . drawable . icon _ work ) Ċ /* ĠĠĠĠĠĠĠ Ġtab Layout . get Tab At ( 4 ) !!. setIcon ( R . drawable . icon _ h obb ies ) ĊĠĠĠĠĠĠĠ Ġtab Layout . get Tab At ( 5 ) !!. setIcon ( R . drawable . icon _ references ) ĊĠĠĠĠĠĠĠ Ġtab Layout . get Tab At ( 6 ) !!. setIcon ( R . drawable . icon _ contact ) */ ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Suppress Lint (" SetText I 1 8 n ") ĊĠĠĠ Ġprivate Ġfun Ġ Ġcheck Login () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( shp Ġ== Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsh p Ġ= Ġget SharedPreferences (" my Preferences ", ĠMODE _ PRIVATE ); ĊĊĊĠĠĠĠĠĠĠ Ġval ĠuserName Ġ= Ġsh p ?. getString (" name ", Ġ""); ĊĊĠĠĠĠĠĠĠ Ġif Ġ( userName Ġ!= Ġnull Ġ&& ĠuserName Ġ!= Ġ"") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtxt Info ?. text Ġ= Ġ" Welcome Ġ$ userName " ĊĊĠĠĠĠĠĠĠ Ġ} Ġelse ĊĠĠĠĠĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlogin Intent Ġ= ĠIntent ( this @ MainActivity , ĠLogin :: class . java ); ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( login Intent ); ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfinish (); ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġprivate Ġfun Ġlogout () Ġ{ ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( shp Ġ== Ġnull ) Ġsh p Ġ= Ġget SharedPreferences (" my Preferences ", ĠMODE _ PRIVATE ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsh p Editor Ġ= Ġsh p !!. edit () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsh p Editor ?. putString (" name ", Ġ"") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsh p Editor ?. commit () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġi Ġ= ĠIntent ( this @ MainActivity , ĠLogin :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( i ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfinish () ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( ex : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠToast . makeText ( this @ MainActivity , Ġex . message . toString (), ĠToast . LENGTH _ LONG ). show () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Suppress Lint (" Restricted Api ") ĊĠĠĠ Ġoverride Ġfun ĠonCreate Options Menu ( menu : ĠMenu ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠ Ġ// Ġmenu ?. clear () ĊĠĠĠĠĠĠĠ Ġmenu Inflater . inflate ( R . menu . menu _ main , Ġmenu ); ĊĠĠĠĠĠĠĠ Ġif ( menu Ġis ĠMenu Builder ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmenu . set Optional Icons Visible ( true ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ// return Ġsuper . onCreate Options Menu ( menu ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Options ItemSelected ( item : ĠMenuItem ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠ Ġ// Ġval Ġf manager = support FragmentManager ĊĠĠĠĠĠĠĠ Ġval Ġintent Contact = ĠIntent ( this , ĠContact Activity :: class . java ) ĊĠĠĠĠĠĠĠ Ġval Ġintent H obb ies = ĠIntent ( this , ĠH obb ies Activity :: class . java ) ĊĠĠĠĠĠĠĠ Ġval Ġintent References = Intent ( this , ĠReferences Activity :: class . java ) ĊĠĠĠĠĠĠĠ Ġreturn Ġwhen ( item . itemId ) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . action _ contact Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( intent Contact ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . action _ h obb ies Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( intent H obb ies ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . action _ references Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( intent References ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . on Options ItemSelected ( item ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊ Ċ // Ċ // Ċ //// ĠĠĠĠĠĠĠĠĠ Ġf manager . beginTransaction () Ċ //// ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. replace ( R . id . id _ activity _ main , ĠContact ()) Ċ //// ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. commit () Ġ> Ġ 0 Ċ //// ĠĠĠĠĠĠĠ ĠR . id . action _ contact Ġ-> Ġ{ Ċ //// Ċ //// ĠĠĠĠĠĠĠĠĠĠĠ Ġf manager . beginTransaction () Ċ //// ĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. replace ( R . id . id _ activity _ main , ĠContact ()) Ċ //// ĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. commit () Ċ //// ĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtrue Ċ //// ĠĠĠĠĠĠĠ Ġ} Ċ // ĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . id _ h obb ies Ġ-> Ġf manager . beginTransaction () Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. replace ( R . id . id _ h obb ies , ĠH obb ies ()) Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. commit () Ġ> Ġ 0 Ċ // ĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . id _ references Ġ-> Ġf manager . beginTransaction () Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. replace ( R . id . id _ references , ĠReferences ()) Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. commit () Ġ> Ġ 0 Ċ // /* ĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . action _ contact Ġ-> true Ċ // ĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . action _ h obb ies Ġ-> Ġtrue Ċ // ĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . action _ references Ġ-> Ġtrue */ Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġsuper . on Options ItemSelected ( item ) Ċ // ĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} Ċ }