package Ġcom . ki en ht . demo filter view . adapter Ċ Ċ import Ġandroid . graphics . Color Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . ki en ht . demo filter view . R Ċ import Ġcom . ki en ht . demo filter view . model . Filter Entity Ċ import Ġcom . ki en ht . filter view . Filter View Ċ import Ġkotlinx . android . synt hetic . main . filter _ item . view .* Ċ Ċ /** Ċ Ġ* Ġ@ author Ġk ien ht Ċ Ġ* Ġ@ since Ġ 2 9 / 0 8 / 2 0 1 8 Ċ Ġ*/ Ċ class ĠFilter Adapter ( val Ġlist : ĠList < Filter Entity >) Ġ: ĠRecyclerView . Adapter < Filter Adapter . Filter Holder >() Ġ{ ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠFilter Holder Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= ĠLayoutInflater . from ( parent . context ). inflate ( R . layout . filter _ item , Ġparent , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġreturn ĠFilter Holder ( view ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count () Ġ= Ġlist . size ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠFilter Holder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġholder . bind Data ( list [ position ]) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinner Ġclass ĠFilter Holder ( view : ĠView ) Ġ: ĠRecyclerView . ViewHolder ( view ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġfun Ġbind Data ( filter : ĠFilter Entity ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠitemView . filter _ label . color Ġ= ĠColor . parse Color ( filter . color ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠitemView . filter _ label . selected TextColor Ġ= ĠColor . WHITE ĊĠĠĠĠĠĠĠĠĠĠĠ ĠitemView . filter _ label . text Ġ= Ġfilter . name ĊĠĠĠĠĠĠĠĠĠĠĠ ĠitemView . filter _ label . isChecked Ġ= Ġfilter . isChecked ĊĠĠĠĠĠĠĠĠĠĠĠ ĠitemView . filter _ label . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġchecked Ġ= Ġ! filter . isChecked ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( it Ġas ĠFilter View ). animate Checked And Invoke ( checked ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfilter . isChecked Ġ= Ġchecked ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }