package Ġcom . stock . sns . zu zu club _ android . ui . feed Ċ Ċ import Ġandroid . view . View Ċ import Ġandroid . widget . ImageView Ċ import Ġandroidx . databinding . Binding Adapter Ċ import Ġandroidx . lifecycle . Mutable LiveData Ċ import Ġandroidx . lifecycle . ViewModel Ċ import Ġcom . bump tech . glide . G lide Ċ import Ġcom . google . android . material . tabs . Tab Layout Ċ import Ġcom . stock . sns . zu zu club _ android . R Ċ import Ġcom . stock . sns . zu zu club _ android . data . model . Feed Ċ import Ġcom . stock . sns . zu zu club _ android . data . model . getDefault Feed List Ċ Ċ class ĠFeed ViewModel Ġ: ĠViewModel () Ġ{ Ċ // Ċ // ĠĠĠ Ġprivate Ġval Ġ_ text Ġ= ĠMutable LiveData < String >(). apply Ġ{ Ċ // ĠĠĠĠĠĠĠ Ġvalue Ġ= Ġ" This Ġis Ġfeed ĠFragment " Ċ // ĠĠĠ Ġ} Ċ // ĠĠĠ Ġval Ġtext : ĠLive Data < String > Ġ= Ġ_ text ĊĊĠĠĠ Ġval Ġfeed Data : ĠMutable LiveData < ArrayList < Feed >> Ġ= ĠMutable LiveData () ĊĠĠĠ Ġvar Ġtemp List : ĠArrayList < Feed > Ġ= ĠgetDefault Feed List () ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġcutoff Text () Ġ// Ġê¸ Ģ ìŀĲ ìĪĺ Ġìŀ ĺ ëĿ¼ ìĦľ ĠëįĶ ë³´ ê¸° Ġë¶ Ļ ĊĠĠĠĠĠĠĠ Ġfeed Data . post Value ( temp List ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget ListItem ( pos : ĠInt ) Ġ{ ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġvar Ġon Tab Selected Listener Ġ= Ġobject Ġ: ĠTab Layout . On Tab Selected Listener Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Tab Selected ( tab : ĠTab Layout . Tab ?) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtab ?. position . let Ġ{ Ġposition Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( position Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġget ListItem ( position ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Tab Un selected ( tab : ĠTab Layout . Tab ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Tab Re selected ( tab : ĠTab Layout . Tab ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġcutoff Text () Ġ{ Ġ// Ġìķ ¼ ë§¤ ë¡ľ Ġê¸ Ģ ìŀĲ Ġìŀ ĺ ëĿ¼ ë²Ħ ë¦¬ ê¸° ĊĠĠĠĠĠĠĠ Ġfor Ġ( i Ġin Ġtemp List ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( i . text . length Ġ> Ġ 1 5 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġi . text Ġ= Ġi . text . substring ( 0 , Ġ 1 5 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġi . text Ġ= Ġi . text Ġ+ Ġ" Ġ... ëįĶ Ġë³´ ê¸° " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ @ Binding Adapter (" profile Image ") Ċ fun Ġget Profile Image ( view : ĠImageView , Ġurl : ĠString ) Ġ{ ĊĠĠĠ ĠG lide . with ( view . context ). load ( url ). placeholder ( R . drawable . non _ profile ). center Crop (). into ( view ) Ċ } Ċ Ċ @ Binding Adapter (" feed Image ") Ċ fun Ġget Feed Image ( view : ĠImageView , Ġurl : ĠString ) Ġ{ ĊĠĠĠ Ġif Ġ( url Ġ!= Ġ"") Ġ{ ĊĠĠĠĠĠĠĠ Ġview . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠ ĠG lide . with ( view . context ). load ( url ). placeholder ( R . drawable . expect _ rabbit _ 9 6 ). center Crop () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. into ( view ) ĊĠĠĠ Ġ} Ġelse Ġview . visibility Ġ= ĠView . GONE Ċ } Ċ Ċ @ Binding Adapter (" emoji Type ") Ċ fun Ġget Emoji Image ( view : ĠImageView , Ġtype : ĠInt ) Ġ{ ĊĠĠĠ Ġwhen Ġ( type ) Ġ{ ĊĠĠĠĠĠĠĠĠ 0 Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠ 1 Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . setImage Resource ( R . drawable . flex _ fox _ 7 2 ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠ 2 Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . setImage Resource ( R . drawable . sad _ l ion _ 7 2 ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠ 3 Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . setImage Resource ( R . drawable . expect _ rabbit _ 7 2 ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠ 4 Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . setImage Resource ( R . drawable . ner vous _ h orse _ 7 2 ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ