package Ġcom . hu aw en . base library . utils Ċ Ċ import Ġandroidx . annotation . Color Int Ċ import Ġandroidx . annotation . Layout Res Ċ import Ġcom . google . android . material . sn ackbar . Snackbar Ċ import Ġandroid . text . Sp ann able String Ċ import Ġandroid . text . Sp anned Ċ import Ġandroid . text . style . ForegroundColor Span Ċ import Ġandroid . view . Gravity Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . LinearLayout Ċ Ċ import Ġjava . lang . ref . Weak Reference Ċ Ċ /** Ċ Ġ* Ġ< pre > Ċ Ġ* Ġauthor : ĠBl ank j Ċ Ġ* Ġblog Ġ Ġ: Ġhttp :// blank j . com Ċ Ġ* Ġtime Ġ Ġ: Ġ 2 0 1 6 / 1 0 / 1 6 Ċ Ġ* Ġdesc Ġ Ġ: ĠSn ackbar çĽ¸åħ³ å·¥åħ· ç±» Ċ </ pre > Ġ* Ċ Ġ*/ Ċ class ĠSn ackbar Utils Ġprivate Ġconstructor () Ġ{ ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġthrow ĠUnsupportedOperationException (" u Ġcan 't Ġinstantiate Ġme ...") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġprivate Ġvar Ġsn ackbar Weak Reference : ĠWeak Reference < Snackbar >? Ġ= Ġnull ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġ æĺ¾ç¤º çŁŃ æĹ¶ sn ackbar ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġparent ĠĠĠ Ġ çĪ¶ è§ĨåĽ¾ ( Coordinator Layout æĪĸèĢħ Decor View ) ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġtext ĠĠĠĠĠ Ġ æĸĩæľ¬ ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param ĠtextColor Ġ æĸĩæľ¬ é¢ľèī² ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġbg Color ĠĠ Ġ èĥĮæĻ¯ èī² ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġshow Short ( parent : ĠView , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext : ĠCharSequence , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Color Int ĠtextColor : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Color Int Ġbg Color : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġshow ( parent , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠSn ackbar . LENGTH _ SHORT , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠtextColor , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbg Color , Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ- 1 , Ġnull ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġ æĺ¾ç¤º çŁŃ æĹ¶ sn ackbar ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġparent ĠĠĠĠĠĠĠĠĠ Ġ çĪ¶ è§ĨåĽ¾ ( Coordinator Layout æĪĸèĢħ Decor View ) ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġtext ĠĠĠĠĠĠĠĠĠĠĠ Ġ æĸĩæľ¬ ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param ĠtextColor ĠĠĠĠĠĠ Ġ æĸĩæľ¬ é¢ľèī² ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġbg Color ĠĠĠĠĠĠĠĠ Ġ èĥĮæĻ¯ èī² ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġaction Text ĠĠĠĠĠ Ġ äºĭä»¶ æĸĩæľ¬ ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġaction TextColor Ġ äºĭä»¶ æĸĩæľ¬ é¢ľèī² ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġlistener ĠĠĠĠĠĠĠ Ġ çĽĳåĲ¬ åĻ¨ ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġshow Short ( parent : ĠView , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext : ĠCharSequence , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Color Int ĠtextColor : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Color Int Ġbg Color : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġaction Text : ĠCharSequence , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Color Int Ġaction TextColor : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlistener : ĠView . OnClickListener ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġshow ( parent , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠSn ackbar . LENGTH _ SHORT , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠtextColor , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbg Color , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġaction Text , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġaction TextColor , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlistener ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġ æĺ¾ç¤º éķ¿ æĹ¶ sn ackbar ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġparent ĠĠĠ Ġ è§ĨåĽ¾ ( Coordinator Layout æĪĸèĢħ Decor View ) ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġtext ĠĠĠĠĠ Ġ æĸĩæľ¬ ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param ĠtextColor Ġ æĸĩæľ¬ é¢ľèī² ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġbg Color ĠĠ Ġ èĥĮæĻ¯ èī² ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġshow Long ( parent : ĠView , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext : ĠCharSequence , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Color Int ĠtextColor : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Color Int Ġbg Color : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġshow ( parent , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠSn ackbar . LENGTH _ LONG , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠtextColor , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbg Color , Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ- 1 , Ġnull ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġ æĺ¾ç¤º éķ¿ æĹ¶ sn ackbar ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġparent ĠĠĠĠĠĠĠĠĠ Ġ è§ĨåĽ¾ ( Coordinator Layout æĪĸèĢħ Decor View ) ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġtext ĠĠĠĠĠĠĠĠĠĠĠ Ġ æĸĩæľ¬ ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param ĠtextColor ĠĠĠĠĠĠ Ġ æĸĩæľ¬ é¢ľèī² ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġbg Color ĠĠĠĠĠĠĠĠ Ġ èĥĮæĻ¯ èī² ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġaction Text ĠĠĠĠĠ Ġ äºĭä»¶ æĸĩæľ¬ ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġaction TextColor Ġ äºĭä»¶ æĸĩæľ¬ é¢ľèī² ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġlistener ĠĠĠĠĠĠĠ Ġ çĽĳåĲ¬ åĻ¨ ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġshow Long ( parent : ĠView , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext : ĠCharSequence , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Color Int ĠtextColor : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Color Int Ġbg Color : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġaction Text : ĠCharSequence , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Color Int Ġaction TextColor : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlistener : ĠView . OnClickListener ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġshow ( parent , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠSn ackbar . LENGTH _ LONG , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠtextColor , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbg Color , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġaction Text , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġaction TextColor , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlistener ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġ æĺ¾ç¤º èĩªå®ļä¹ī æĹ¶ éķ¿ sn ackbar ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġparent ĠĠĠ Ġ çĪ¶ è§ĨåĽ¾ ( Coordinator Layout æĪĸèĢħ Decor View ) ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġtext ĠĠĠĠĠ Ġ æĸĩæľ¬ ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param ĠtextColor Ġ æĸĩæľ¬ é¢ľèī² ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġbg Color ĠĠ Ġ èĥĮæĻ¯ èī² ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġshow In defin ite ( parent : ĠView , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext : ĠCharSequence , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Color Int ĠtextColor : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Color Int Ġbg Color : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġshow ( parent , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠSn ackbar . LENGTH _ IN DEFIN ITE , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠtextColor , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbg Color , Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ- 1 , Ġnull ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġ æĺ¾ç¤º èĩªå®ļä¹ī æĹ¶ éķ¿ sn ackbar ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġparent ĠĠĠĠĠĠĠĠĠ Ġ çĪ¶ è§ĨåĽ¾ ( Coordinator Layout æĪĸèĢħ Decor View ) ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġtext ĠĠĠĠĠĠĠĠĠĠĠ Ġ æĸĩæľ¬ ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param ĠtextColor ĠĠĠĠĠĠ Ġ æĸĩæľ¬ é¢ľèī² ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġbg Color ĠĠĠĠĠĠĠĠ Ġ èĥĮæĻ¯ èī² ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġaction Text ĠĠĠĠĠ Ġ äºĭä»¶ æĸĩæľ¬ ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġaction TextColor Ġ äºĭä»¶ æĸĩæľ¬ é¢ľèī² ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġlistener ĠĠĠĠĠĠĠ Ġ çĽĳåĲ¬ åĻ¨ ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġshow In defin ite ( parent : ĠView , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext : ĠCharSequence , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Color Int ĠtextColor : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Color Int Ġbg Color : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġaction Text : ĠCharSequence , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Color Int Ġaction TextColor : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlistener : ĠView . OnClickListener ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġshow ( parent , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠSn ackbar . LENGTH _ IN DEFIN ITE , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠtextColor , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbg Color , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġaction Text , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġaction TextColor , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlistener ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġè®¾ç½® sn ackbar æĸĩåŃĹ åĴĮ èĥĮæĻ¯ é¢ľèī² ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġparent ĠĠĠĠĠĠĠĠĠ Ġ çĪ¶ è§ĨåĽ¾ ( Coordinator Layout æĪĸèĢħ Decor View ) ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġtext ĠĠĠĠĠĠĠĠĠĠĠ Ġ æĸĩæľ¬ ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġduration ĠĠĠĠĠĠĠ Ġ æĺ¾ç¤º æĹ¶ éķ¿ ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param ĠtextColor ĠĠĠĠĠĠ Ġ æĸĩæľ¬ é¢ľèī² ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġbg Color ĠĠĠĠĠĠĠĠ Ġ èĥĮæĻ¯ èī² ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġaction Text ĠĠĠĠĠ Ġ äºĭä»¶ æĸĩæľ¬ ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġaction TextColor Ġ äºĭä»¶ æĸĩæľ¬ é¢ľèī² ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġlistener ĠĠĠĠĠĠĠ Ġ çĽĳåĲ¬ åĻ¨ ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġshow ( parent : ĠView , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext : ĠCharSequence , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġduration : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Color Int ĠtextColor : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Color Int Ġbg Color : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġaction Text : ĠCharSequence ?, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Color Int Ġaction TextColor : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlistener : ĠView . OnClickListener ?) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsp ann able String Ġ= ĠSp ann able String ( text ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcolor Span Ġ= ĠFore ground Color Span ( textColor ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsp ann able String . set Span ( color Span , Ġ 0 , Ġsp ann able String . length , ĠSp anned . SPAN _ EXCL USIVE _ EXCL USIVE ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsn ackbar Weak Reference Ġ= ĠWeak Reference ( Snackbar . make ( parent , Ġsp ann able String , Ġduration )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsn ackbar Ġ= Ġsn ackbar Weak Reference !!. get () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġview Ġ= Ġsn ackbar ?. getView () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview ?. set BackgroundColor ( bgColor ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( action Text Ġ!= Ġnull Ġ&& Ġaction Text . length Ġ> Ġ 0 Ġ&& Ġlistener Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsn ackbar ?. setAction TextColor ( action TextColor ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsn ackbar ?. setAction ( action Text , Ġlistener ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsn ackbar ?. show () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġä¸º sn ackbar æ·»åĬł å¸ĥå±Ģ ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġåľ¨ show ... Snackbar ä¹ĭåĲİ è°ĥçĶ¨ ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġlayout Id Ġ å¸ĥå±Ģ æĸĩä»¶ ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġindex ĠĠĠ Ġ ä½įç½® ( the Ġposition Ġat Ġwhich Ġto Ġadd Ġthe Ġchild Ġor Ġ- 1 Ġto Ġadd Ġlast ) ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġadd View (@ Layout Res Ġlayout Id : ĠInt , Ġindex : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsn ackbar Ġ= Ġsn ackbar Weak Reference !!. get () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( sn ackbar Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġview Ġ= Ġsn ackbar . view ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlayout Ġ= Ġview Ġas ĠSn ackbar . Snackbar Layout ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġchild Ġ= ĠLayoutInflater . from ( view . getContext ()). inflate ( layout Id , Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġparams Ġ= ĠLinearLayout . LayoutParams ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLinearLayout . LayoutParams . WRAP _ CONTENT , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLinearLayout . LayoutParams . WRAP _ CONTENT ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġparams . gravity Ġ= ĠGr avity . CENTER _ VERTICAL ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlayout . addView ( child , Ġindex , Ġparams ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġä¸º sn ackbar æ·»åĬł å¸ĥå±Ģ ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġåľ¨ show ... Snackbar ä¹ĭåĲİ è°ĥçĶ¨ ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġchild Ġ Ġ è¦ģ æ·»åĬł çļĦ view ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġindex Ġ Ġ ä½įç½® ( the Ġposition Ġat Ġwhich Ġto Ġadd Ġthe Ġchild Ġor Ġ- 1 Ġto Ġadd Ġlast ) ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġparams Ġ å¸ĥå±Ģ åıĤæķ° ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġadd View ( child : ĠView , Ġindex : ĠInt , Ġparams : ĠViewGroup . LayoutParams ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsn ackbar Ġ= Ġsn ackbar Weak Reference !!. get () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( sn ackbar Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġview Ġ= Ġsn ackbar . view ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlayout Ġ= Ġview Ġas ĠSn ackbar . Snackbar Layout ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlayout . addView ( child , Ġindex , Ġparams ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġ åıĸæ¶Ī sn ackbar æĺ¾ç¤º ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġdismiss () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( sn ackbar Weak Reference Ġ!= Ġnull Ġ&& Ġsn ackbar Weak Reference !!. get () Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsn ackbar Weak Reference !!. get ()?. dismiss () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsn ackbar Weak Reference Ġ= Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ