package Ġcom . sil ence fly 9 6 . pd ca . plan Ċ Ċ import Ġandroid . graphics . Color Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . card view . widget . Card View Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . sil ence fly 9 6 . pd ca . databinding . Item Plan List Binding Ċ import Ġcom . sil ence fly 9 6 . pd ca . plan . model . Plan Ċ Ċ class ĠPlan Adapter ( ĊĠĠĠ Ġprivate Ġval Ġplan List : ĠList < Plan >, private Ġval ĠonSelect Listener : ĠOn Select Listener Ċ ): ĠRecyclerView . Adapter < Plan Adapter . ViewHolder >() Ġ{ ĊĊĠĠĠ Ġinner Ġclass ĠViewHolder ( binding : ĠItem Plan List Binding ) Ġ: ĠRecyclerView . ViewHolder ( binding . root ) Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġtitle : ĠTextView Ġ= Ġbinding . title ĊĠĠĠĠĠĠĠ Ġvar Ġcard : ĠCard View Ġ= Ġbinding . card ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġ// å°Ĩ ç»ĳå®ļ ç±» ä½ľä¸º åıĤæķ° ä¼łåħ¥ ĊĠĠĠĠĠĠĠ Ġval Ġbinding Ġ= ĠItem Plan List Binding . inflate ( LayoutInflater . from ( parent . context ), Ġparent , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġreturn ĠViewHolder ( binding ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġplan Ġ= Ġplan List . get ( position ) ĊĠĠĠĠĠĠĠ Ġ// çĤ¹åĩ» äºĭä»¶ ĊĠĠĠĠĠĠĠ Ġholder . item View . setOnClickListener { ĊĠĠĠĠĠĠĠĠĠĠĠ ĠonSelect Listener . on Select ( plan . id ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ// æłĩé¢ĺ ĊĠĠĠĠĠĠĠ Ġholder . title . text Ġ= Ġplan . title ĊĠĠĠĠĠĠĠ Ġ// é¢ľèī² ĊĠĠĠĠĠĠĠ Ġholder . card . set Card BackgroundColor ( when ( plan . id . toInt ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠ 0 Ġ-> ĠColor . parse Color ("# 0 B 7 BF B ") ĊĠĠĠĠĠĠĠĠĠĠĠĠ 1 Ġ-> ĠColor . parse Color ("# FE 4 C 4 C ") ĊĠĠĠĠĠĠĠĠĠĠĠĠ 2 Ġ-> ĠColor . parse Color ("# FF 9 0 0 0 ") ĊĠĠĠĠĠĠĠĠĠĠĠĠ 3 Ġ-> ĠColor . parse Color ("# 1 CD 6 5 A ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> ĠColor . parse Color ("# CCCC CC ") ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count () Ġ= Ġplan List . size Ċ } Ċ Ċ interface ĠOn Select Listener Ġ{ ĊĠĠĠ Ġfun ĠonSelect ( id : ĠLong ) Ċ }