package Ġcom . is db . tracks . ui Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġcom . is db . R Ċ import Ġcom . is db . login . data . model . User Ċ import Ġtim ber . log . Tim ber Ċ Ċ // Ġthe Ġfragment Ġinitialization Ġparameters , Ġe . g . ĠARG _ ITEM _ NUMBER Ċ private Ġconst Ġval ĠARG _ PARAM 2 Ġ= Ġ" param 2 " Ċ Ċ /** Ċ Ġ* ĠA Ġsimple Ġ[ Fragment ] Ġsubclass . Ċ Ġ* ĠUse Ġthe Ġ[ User Fragment . newInstance ] Ġfactory Ġmethod Ġto Ċ Ġ* Ġcreate Ġan Ġinstance Ġof Ġthis Ġfragment . Ċ Ġ*/ Ċ class ĠUser Fragment Ġ: ĠFragment () Ġ{ ĊĠ Ġprivate Ġvar Ġuser : ĠUser ? Ġ= Ġnull ĊĊĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠ Ġarguments ?. let Ġ{ ĊĠĠĠĠĠ Ġuser Ġ= Ġit . get Parcelable ( ARG _ PARAM 2 ) ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġoverride Ġfun ĠonCreate View ( ĊĠĠĠ Ġinflater : ĠLayoutInflater , ĊĠĠĠ Ġcontainer : ĠViewGroup ?, ĊĠĠĠ ĠsavedInstanceState : ĠBundle ? ĊĠ Ġ): ĠView ? Ġ{ ĊĠĠĠ Ġ// ĠInf late Ġthe Ġlayout Ġfor Ġthis Ġfragment ĊĠĠĠ Ġval Ġinf late Ġ= Ġinflater . inflate ( R . layout . fragment _ user , Ġcontainer , Ġfalse ) ĊĠĠĠ ĠTim ber . i (" Sw itched Ġto Ġuser Ġfragment Ġfor Ġ$ user ") ĊĊĠĠĠ Ġval Ġuser Email Ġ= Ġinf late . findViewById < TextView >( R . id . user _ email ) ĊĠĠĠ Ġuser Email . text Ġ= Ġuser ?. email ĊĊĠĠĠ Ġval ĠuserName Ġ= Ġinf late . findViewById < TextView >( R . id . user _ name ) ĊĠĠĠ ĠuserName . text Ġ= Ġuser ?. username ĊĊĠĠĠ Ġreturn Ġinf late ĊĠ Ġ} ĊĊĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠUse Ġthis Ġfactory Ġmethod Ġto Ġcreate Ġa Ġnew Ġinstance Ġof ĊĠĠĠĠ Ġ* Ġthis Ġfragment Ġusing Ġthe Ġprovided Ġparameters . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġparam 2 ĠParameter Ġ 2 . ĊĠĠĠĠ Ġ* Ġ@ return ĠA Ġnew Ġinstance Ġof Ġfragment ĠUser Fragment . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Jvm Static ĊĠĠĠ Ġfun Ġnew Instance ( ĊĠĠĠĠĠ Ġparam 2 : ĠUser ĊĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠ ĠUser Fragment (). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġarguments Ġ= ĠBundle (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠ Ġput Parcelable ( ARG _ PARAM 2 , Ġparam 2 ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠ Ġ} ĊĠ Ġ} Ċ }