package Ġcom . ash ish . echo . fragments ĊĊ Ċ import Ġandroid . app . Activity Ċ import Ġandroid . content . Context Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . support . v 4 . app . Fragment Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . Menu Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . Switch Ċ import Ġcom . ash ish . echo . R ĊĊ Ċ // ĠTODO : ĠRename Ġparameter Ġarguments , Ġchoose Ġnames Ġthat Ġmatch Ċ // Ġthe Ġfragment Ġinitialization Ġparameters , Ġe . g . ĠARG _ ITEM _ NUMBER Ċ private Ġconst Ġval ĠARG _ PARAM 1 Ġ= Ġ" param 1 " Ċ private Ġconst Ġval ĠARG _ PARAM 2 Ġ= Ġ" param 2 " Ċ Ċ /** Ċ Ġ* ĠA Ġsimple Ġ[ Fragment ] Ġsubclass . Ċ Ġ* Ċ Ġ*/ Ċ class ĠSetting Fragment Ġ: ĠFragment () Ġ{ ĊĠĠĠ Ġvar Ġsh ake Switch : ĠSwitch ?= null ĊĠĠĠ Ġvar Ġmy Activity : Activity ?= null ĊĠĠĠ Ġobject ĠStat ified { ĊĠĠĠĠĠĠĠ Ġvar ĠMY _ PRE FS _ NAME =" Sh ake Feature " ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( ĊĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , Ġcontainer : ĠViewGroup ?, ĊĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ? ĊĠĠĠ Ġ): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview = in flater !!. inflate ( R . layout . fragment _ setting , container , false ) ĊĠĠĠĠĠĠĠ Ġactivity ?. title =" Settings " ĊĠĠĠĠĠĠĠ Ġsh ake Switch = view ?. findViewById ( R . id . switch Sh ake ) ĊĊĠĠĠĠĠĠĠ Ġ// ĠInf late Ġthe Ġlayout Ġfor Ġthis Ġfragment ĊĠĠĠĠĠĠĠ Ġreturn Ġview ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ Ġset Has Options Menu ( true ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Attach ( context : ĠContext ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Attach ( context ) ĊĠĠĠĠĠĠĠ Ġmy Activity = context Ġas ĠActivity ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Attach ( activity : ĠActivity ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Attach ( activity ) ĊĠĠĠĠĠĠĠ Ġmy Activity Ġ= activity ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Activity Created ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Activity Created ( savedInstanceState ) ĊĠĠĠĠĠĠĠĠ Ġval Ġprefs = my Activity ?. get SharedPreferences ( Stat ified . MY _ PRE FS _ NAME , Context . MODE _ PRIVATE ) ĊĠĠĠĠĠĠĠ Ġval Ġis Allowed = prefs ?. getBoolean (" feature ", false ) ĊĠĠĠĠĠĠĠ Ġif ( is Allowed Ġas ĠBoolean ){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsh ake Switch ?. isChecked = true ĊĊĠĠĠĠĠĠĠ Ġ} else Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsh ake Switch ?. isChecked = false ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġsh ake Switch ?. setOn Checked ChangeListener ({ Ġcompound Button , b -> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif ( b ){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġeditor = my Activity ?. get SharedPreferences ( Stat ified . MY _ PRE FS _ NAME , Context . MODE _ PRIVATE )?. edit () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġeditor ?. put Boolean (" feature ", true ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġeditor ?. apply () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġeditor = my Activity ?. get SharedPreferences ( Stat ified . MY _ PRE FS _ NAME , Context . MODE _ PRIVATE )?. edit () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġeditor ?. put Boolean (" feature ", false ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġeditor ?. apply () ĊĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Prepare Options Menu ( menu : ĠMenu ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Prepare Options Menu ( menu ) ĊĠĠĠĠĠĠĠ Ġval Ġitem = menu ?. find Item ( R . id . action _ sort ) ĊĠĠĠĠĠĠĠ Ġitem ?. isVisible = false ĊĠĠĠ Ġ} ĊĊĊĊ Ċ } Ċ