package Ġcom . it he bk . tasks . ui . settings Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġcom . google . android . material . bottom sheet . Bottom Sheet Dialog Fragment Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . recyclerview . widget . Linear LayoutManager Ċ import Ġcom . it he bk . tasks . R Ċ import Ġcom . it he bk . tasks . models . Setting Model Ċ import Ġkotlinx . android . synt hetic . main . fragment _ item _ list _ dialog _ list _ dialog .* Ċ import Ġkotlinx . android . synt hetic . main . fragment _ item _ list _ dialog _ list _ dialog _ item . view .* Ċ Ċ // ĠTODO : ĠCustom ize Ġparameter Ġargument Ġnames Ċ const Ġval ĠARG _ ITEM _ COUNT Ġ= Ġ" item _ count " Ċ Ċ class ĠItem List Dialog Fragment Ġ: ĠBottom Sheet Dialog Fragment () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( ĊĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , Ġcontainer : ĠViewGroup ?, ĊĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ? ĊĠĠĠ Ġ): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġinflater . inflate ( R . layout . fragment _ item _ list _ dialog _ list _ dialog , Ġcontainer , Ġfalse ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView , ĠsavedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġlist . layout Manager Ġ= ĠLinearLayoutManager ( context ) ĊĠĠĠĠĠĠĠ Ġlist . adapter Ġ= Ġarguments ?. getInt ( ARG _ ITEM _ COUNT )?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġarray Ġ= Ġmutable ListOf < Setting Model >() ĊĠĠĠĠĠĠĠĠĠĠĠ Ġarray . add ( Setting Model (" Settings ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġarray . add ( Setting Model (" Feedback ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġarray . add ( Setting Model (" About ")) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠItem Adapter ( array ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġinner Ġclass ĠViewHolder Ġinternal Ġconstructor ( ĊĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , ĊĠĠĠĠĠĠĠ Ġparent : ĠViewGroup ĊĠĠĠ Ġ) Ġ: ĠRecyclerView . ViewHolder ( ĊĠĠĠĠĠĠĠ Ġinflater . inflate ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . layout . fragment _ item _ list _ dialog _ list _ dialog _ item , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparent , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfalse ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġinternal Ġval Ġtext : ĠTextView Ġ= ĠitemView . text ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġinner Ġclass ĠItem Adapter Ġinternal Ġconstructor ( private Ġval Ġsettings : ĠList < Setting Model >) Ġ: ĊĠĠĠĠĠĠĠ ĠRecyclerView . Adapter < ViewHolder >() Ġ{ ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠViewHolder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠViewHolder ( LayoutInflater . from ( parent . context ), Ġparent ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . text . text Ġ= Ġsettings . get ( position ). title ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠgetItem Count () Ġ= Ġsettings . size ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// ĠTODO : ĠCustom ize Ġparameters ĊĠĠĠĠĠĠĠ Ġfun Ġnew Instance ( item Count : ĠInt ): ĠItem List Dialog Fragment Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠItem List Dialog Fragment (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġarguments Ġ= ĠBundle (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput Int ( ARG _ ITEM _ COUNT , Ġitem Count ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} Ċ } Ċ