package Ġcom . air bnb . lott ie . samples Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . support . annotation . Drawable Res Ċ import Ġandroid . util . Attribute Set Ċ import Ġandroid . util . Typed Value Ċ import Ġandroid . widget . ImageView Ċ import Ġandroid . widget . LinearLayout Ċ import Ġkotlinx . android . synt hetic . main . list _ item _ preview . view .* Ċ Ċ class ĠPreview Item View Ġ@ Jvm Over loads Ġconstructor ( ĊĠĠĠĠĠĠĠ Ġcontext : ĠContext , ĊĠĠĠĠĠĠĠ Ġattrs : ĠAttributeSet ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠ Ġdef Style Attr : ĠInt Ġ= Ġ 0 Ċ ) Ġ: ĠLinearLayout ( context , Ġattrs , Ġdef Style Attr ) Ġ{ ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġorientation Ġ= ĠV ERT ICAL ĊĠĠĠĠĠĠĠ Ġinf late ( R . layout . list _ item _ preview ) ĊĊĠĠĠĠĠĠĠ Ġattrs ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtyped Array Ġ= Ġcontext . obtain Styled Attributes ( it , ĠR . style able . Preview Item View , Ġ 0 , Ġ 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtitle Text Ġ= Ġresources . getText ( typed Array . getResource Id ( R . style able . Preview Item View _ title Text , Ġ 0 )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġaction Text Ġ= Ġresources . getText ( typed Array . getResource Id ( R . style able . Preview Item View _ action Text , Ġ 0 )) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġtitle . text Ġ= Ġtitle Text ĊĠĠĠĠĠĠĠĠĠĠĠ Ġaction . text Ġ= Ġaction Text ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġtyped Array . recycle () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġout Value Ġ= ĠTyped Value () ĊĠĠĠĠĠĠĠ ĠgetContext (). theme . resolve Attribute ( android . R . attr . selectable Item Background , Ġout Value , Ġtrue ) ĊĠĠĠĠĠĠĠ Ġset Background Resource ( out Value . resourceId ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġadd Icon (@ Drawable Res Ġdrawable Res : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠimageView Ġ= ĠImageView ( context ) ĊĠĠĠĠĠĠĠ ĠimageView . setImage Resource ( drawable Res ) ĊĠĠĠĠĠĠĠ Ġicons . addView ( imageView ) ĊĠĠĠ Ġ} Ċ }