package Ġcom . github . flo rent 3 7 . kotlin . please animate . sample Ċ Ċ import Ġandroid . animation . Animator Ċ import Ġandroid . animation . Object Animator Ċ import Ġandroid . graphics . Color Ċ import Ġandroid . os . Bundle Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġandroid . view . Gravity Ċ import Ġandroid . view . View Ċ import Ġcom . github . flo rent 3 7 . kotlin . please animate . core . custom . Custom Anim Expectation Ċ import Ġcom . github . flo rent 3 7 . kotlin . please animate . please Ċ import Ġkotlinx . android . synt hetic . main . activity _ sample .* ĊĊ Ċ class ĠAnim Sample Activity Ġ: ĠAppCompatActivity () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ sample ) ĊĊĠĠĠĠĠĠĠ Ġplease Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġanimate ( bottom Layout ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġout Of Screen ( Gravity . BOTTOM ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġanimate ( content ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġout Of Screen ( Gravity . BOTTOM ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinvisible () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ/* ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcustom ( object : ĠCustom Anim Expectation () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġget Animator ( view To Move : ĠView ): ĠAn imator ? Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠObject Animator . of Float ( view To Move , Ġ" my Method ", Ġ 0 f , Ġ 1 f ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}. now () ĊĊĠĠĠĠĠĠĠ Ġval Ġanimation Ġ= Ġplease ( duration Ġ= Ġ 1 5 0 0 L ) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġanimate ( avatar ) Ġto Be Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbottom Of Its Parent ( margin Dp Ġ= Ġ 3 6 f ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġleft Of Its Parent ( margin Dp Ġ= Ġ 1 6 f ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvisible () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwidth ( 4 0 , Ġkeep Ratio Ġ= Ġtrue , Ġto Dp Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġanimate ( name ) Ġto Be Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġright Of ( avatar , Ġmargin Dp Ġ= Ġ 1 6 f ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsame Center Vertical As ( avatar ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠtextColor ( Color . WHITE ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġanimate ( sub name ) Ġto Be Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġright Of ( name , Ġmargin Dp Ġ= Ġ 5 f ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsame Center Vertical As ( name ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠtextColor ( Color . WHITE ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġanimate ( revert ) Ġto Be Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġright Of Its Parent ( margin Dp Ġ= Ġ 4 f ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbottom Of Its Parent ( margin Dp Ġ= Ġ 1 2 f ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbackground Alpha ( 0 f ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġanimate ( start ) Ġto Be Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġabove Of ( revert , Ġmargin Dp Ġ= Ġ 4 f ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġright Of Its Parent ( margin Dp Ġ= Ġ 4 f ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbackground Alpha ( 0 f ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġanimate ( bottom Layout ) Ġto Be Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoriginal Position () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġanimate ( content ) Ġto Be Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoriginal Position () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvisible () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġstart . setOnClickListener Ġ{ Ġanimation . start () Ġ} ĊĊĠĠĠĠĠĠĠ Ġrevert . setOnClickListener Ġ{ Ġanimation . reset () Ġ} ĊĠĠĠ Ġ} Ċ } Ċ