package Ġcom . s uda . yz une . wake up schedule . settings . view _ binder Ċ Ċ import Ġandroid . graphics . Color Ċ import Ġandroid . graphics . Type face Ċ import Ġandroid . view . Gravity Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . core . content . Context Compat Ċ import Ġcom . s uda . yz une . wake up schedule . R Ċ import Ġcom . s uda . yz une . wake up schedule . settings . bean . Category Item Ċ import Ġcom . s uda . yz une . wake up schedule . utils . Preference Utils Ċ import Ġcom . s uda . yz une . wake up schedule . utils . View Utils Ċ import Ġme . dr ake et . mult it ype . Item View Binder Ċ import Ġorg . jetbrains . ank o .* Ċ Ċ class ĠCategory Item View Binder Ġ: ĠItem View Binder < Category Item , ĠCategory Item View Binder . ViewHolder >() Ġ{ ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( in flater : ĠLayoutInflater , Ġparent : ĠViewGroup ): ĠViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= ĠAn ko Context . create ( parent . context ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvertical Layout Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= ĠR . id . ank o _ layout ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġview Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= ĠR . id . ank o _ view ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params ( match Parent , ĠView Utils . getStatus Bar Height ( context ) Ġ+ Ġdip ( 4 8 )) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlinear Layout Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Padding ( dip ( 1 6 ), Ġdip ( 2 ), Ġdip ( 1 6 ), Ġdip ( 2 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠbackgroundColor Ġ= ĠPreference Utils . getInt From SP ( context , Ġ" nav _ bar _ color ", ĠContext Compat . getColor ( context , ĠR . color . color Accent )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠtextView Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= ĠR . id . ank o _ text _ view ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠtextColor Ġ= ĠColor . WHITE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Size Ġ= Ġ 1 2 f ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlines Ġ= Ġ 1 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgravity Ġ= ĠGr avity . CENTER _ VERTICAL ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtype face Ġ= ĠType face . DEFAULT _ BOLD ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params ( wrap Content , Ġwrap Content ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params ( wrap Content , Ġwrap Content ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtop Margin Ġ= Ġdip ( 1 6 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}. view ĊĠĠĠĠĠĠĠ Ġreturn ĠViewHolder ( view ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠViewHolder , Ġitem : ĠCategory Item ) Ġ{ ĊĠĠĠĠĠĠĠ Ġholder . tv Category . text Ġ= Ġitem . name ĊĠĠĠĠĠĠĠ Ġif Ġ( item . has Margin Top ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . v Top . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . v Top . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠViewHolder ( item View : ĠView ) Ġ: Ġandroidx . recyclerview . widget . RecyclerView . ViewHolder ( item View ) Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġtv Category : ĠTextView Ġ= ĠitemView . find ( R . id . ank o _ text _ view ) ĊĠĠĠĠĠĠĠ Ġvar Ġv Top : ĠView Ġ= ĠitemView . find ( R . id . ank o _ view ) ĊĠĠĠ Ġ} Ċ Ċ }