package Ġcom . yy . mobile . widget Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ Ċ /** Ċ Ġ* ĠBase Ġclass Ġfor Ġan ĠAdapter . Ċ Ġ*/ Ċ abstract Ġclass ĠSlide View Adapter Ġ: ĠSlide Adapter < Slide ViewHolder > Ġ{ ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠCalled Ġby Ġ[ Sl id able Layout ] Ġto Ġcreate Ġthe Ġview . ĊĠĠĠĠ Ġ* ĠGener ally Ġspeaking , Ġthis Ġmethod Ġwill Ġbe Ġcalled , Ġonce Ġthe ĊĠĠĠĠ Ġ* Ġ[ Sl id able Layout . setAdapter ] Ġmethod Ġis Ġcalled , Ġto Ġcreate Ġthe ĊĠĠĠĠ Ġ* Ġcurrently Ġ[ View ]. ĊĠĠĠĠ Ġ* ĠThe Ġsecond Ġtime Ġthis Ġmethod Ġis Ġcalled Ġis Ġwhen Ġthe Ġfirst Ġsl iding ĊĠĠĠĠ Ġ* Ġevent Ġoccurs , Ġto Ġcreate Ġthe Ġsl iding Ġtarget 's Ġ[ View ]. ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* ĠâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶ ĊĠĠĠĠ Ġ* ĠåĪĽå»º Ġ[ View ] ĠãĢĤ ĊĠĠĠĠ Ġ* Ġ ä¸ĢèĪ¬ æĿ¥è¯´ ï¼Į è¯¥ æĸ¹æ³ķ ä¼ļ åľ¨ Ġ[ Sl id able Layout . setAdapter ] Ġæĸ¹æ³ķ è°ĥçĶ¨ æĹ¶ è§¦åıĳ ä¸Ģæ¬¡ ï¼Į ĊĠĠĠĠ Ġ* ĠåĪĽå»º å½ĵåīį æĺ¾ç¤º çļĦ Ġ[ View ] ï¼Į ĊĠĠĠĠ Ġ* Ġä¼ļ åľ¨ é¦ĸ æ¬¡ å¼Ģå§ĭ æ»ĳ åĬ¨ æĹ¶ è§¦åıĳ ç¬¬äºĮ æ¬¡ ï¼Į åĪĽå»º æ»ĳ åĬ¨ çĽ®æłĩ çļĦ Ġ[ View ] ãĢĤ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprotected Ġabstract Ġfun ĠonCreate View ( context : ĠContext , Ġparent : ĠViewGroup , Ġinflater : ĠLayoutInflater ): ĠView ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠCalled Ġby Ġ[ Sl id able Layout ] Ġwhen Ġ[ view ] Ġstarts Ġto Ġslide Ġto Ġvisible . ĊĠĠĠĠ Ġ* ĠThis Ġmethod Ġshould Ġupdate Ġthe Ġcontents Ġof Ġthe Ġ[ view ] Ġto Ġreflect Ġthe ĊĠĠĠĠ Ġ* Ġitem Ġat Ġthe Ġ[ direction ]. ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* ĠâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶ âĢĶ ĊĠĠĠĠ Ġ* Ġå½ĵ Ġ[ view ] Ġ å¼Ģå§ĭ æ»ĳ åĬ¨ åĪ° åı¯ è§ģ æĹ¶ è§¦åıĳ ï¼Į åľ¨ è¿Ļä¸ª æĸ¹æ³ķ ä¸Ń å®ŀçİ° æķ°æį® åĴĮ Ġ[ view ] ĠçļĦ ç»ĳå®ļ ãĢĤ ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġdirection Ġ Ġæ » ĳ åĬ¨ çļĦ æĸ¹åĲĳ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprotected Ġabstract Ġfun Ġon BindView ( view : ĠView , Ġdirection : ĠSlide Direction ) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠCalled Ġby Ġ[ Sl id able Layout ] Ġwhen Ġview Ġfinishes Ġsl iding . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* ĠâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶ âĢĶ ĊĠĠĠĠ Ġ* Ġå½ĵ æ»ĳ åĬ¨ å®ĮæĪĲ æĹ¶ è§¦åıĳ ãĢĤ ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġdirection Ġæ » ĳ åĬ¨ çļĦ æĸ¹åĲĳ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprotected Ġopen Ġfun Ġfinish Slide ( direction : ĠSlide Direction ) Ġ{} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠCalled Ġby Ġ[ Sl id able Layout ] Ġwhen Ġview Ġfinishes Ġsl iding . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* ĠâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶ âĢĶ ĊĠĠĠĠ Ġ* Ġå½ĵ æ»ĳ åĬ¨ å®ĮæĪĲ æĹ¶ è§¦åıĳ ãĢĤ ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġdirection Ġæ » ĳ åĬ¨ çļĦ æĸ¹åĲĳ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprotected Ġopen Ġfun Ġfinish Slide ( dismiss View : ĠView , Ġvisible View : ĠView , Ġdirection : ĠSlide Direction ) Ġ{} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠCalled Ġby Ġ[ Sl id able Layout ] Ġwhen Ġa Ġview Ġcreated Ġby Ġthis ĊĠĠĠĠ Ġ* Ġadapter Ġhas Ġbeen Ġdis missed . ĊĠĠĠĠ Ġ* ĠDo Ġsome Ġcleaning Ġin Ġthis Ġmethod . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* ĠâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶ âĢĶ ĊĠĠĠĠ Ġ* Ġå½ĵ æ»ĳ åĬ¨ å®ĮæĪĲ æĹ¶ ï¼Į ç¦» å¼Ģ çļĦ Ġ[ view ] Ġä¼ļ è§¦åıĳ ï¼Į åľ¨ è¿Ļä¸ª æĸ¹æ³ķ ä¸Ń å®ŀçİ° å¯¹ Ġ[ view ] ĠçļĦ æ¸ħ çĲĨ ãĢĤ ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġdirection Ġ Ġæ » ĳ åĬ¨ çļĦ æĸ¹åĲĳ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprotected Ġopen Ġfun Ġon View Dismiss ( view : ĠView , Ġparent : ĠViewGroup , Ġdirection : ĠSlide Direction ) Ġ{ ĊĠĠĠĠĠĠĠ Ġparent . remove View ( view ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠCalled Ġby Ġ[ Sl id able Layout ] Ġwhen Ġ[ view ] Ġcompletely Ġappears . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* ĠâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶ âĢĶ ĊĠĠĠĠ Ġ* Ġå½ĵ Ġ[ view ] Ġ å®Įåħ¨ åĩºçİ° æĹ¶ è§¦åıĳ ãĢĤ ĊĠĠĠĠ Ġ* Ġ è¿Ļä¸ª æĹ¶ æľº åı¯èĥ½ æĺ¯ Ġ[ Sl id able Layout . setAdapter ] Ġ åĲİ Ġ[ view ] ĠçļĦ ç¬¬ ä¸Ģæ¬¡ åĪĿå§ĭåĮĸ ï¼Į ĊĠĠĠĠ Ġ* Ġ ä¹Ł åı¯èĥ½ æĺ¯ å®ĮæĪĲ ä¸Ģæ¬¡ æ»ĳ åĬ¨ ï¼Į åľ¨ Ġ[ finish Slide ] Ġ åĲİ Ġ** èĢĮä¸Ķ ** Ġæ » ĳ åĪ°äºĨ ä¸Ģä¸ª æĸ°çļĦ Ġ[ view ] ãĢĤ ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ ä¹Łå°±æĺ¯ è¯´ ï¼Į å¦Ĥæŀľ Ġ[ finish Slide ] ĠçļĦ Ġ[ Slide Direction ] Ġæĺ¯ Ġ[ Slide Direction . Origin ] Ġï¼Į ĊĠĠĠĠ Ġ* Ġ ä¹Łå°±æĺ¯ æ»ĳ åĬ¨ åĽŀ å¼¹ åĪ° æľ¬ æĿ¥çļĦ çķĮéĿ¢ ä¸Ĭ ï¼Į æĺ¯ ä¸įä¼ļ è§¦åıĳ Ġ[ on View Complete ] ĠçļĦ ãĢĤ ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġåľ¨ è¿Ļä¸ª æĸ¹æ³ķ ä¸Ń å®ŀçİ° å½ĵ Ġ[ view ] Ġ ç¬¬ ä¸Ģæ¬¡ å®Įåħ¨ åĩºçİ° æĹ¶ æīį åģļ çļĦ ä¸ļåĬ¡ ãĢĤ æ¯Ķå¦Ĥ å¼Ģå§ĭ æĴŃæĶ¾ è§Ĩé¢ĳ ãĢĤ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprotected Ġopen Ġfun Ġon View Complete ( view : ĠView , Ġdirection : ĠSlide Direction ) Ġ{} ĊĊĠĠĠ Ġfinal Ġoverride Ġfun ĠonCreate ViewHolder ( context : ĠContext , Ġparent : ĠViewGroup , Ġinflater : ĠLayoutInflater ): ĠSlide ViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠSlide ViewHolder ( onCreate View ( context , Ġparent , Ġinflater )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfinal Ġoverride Ġfun Ġon BindView ( view Holder : ĠSlide ViewHolder , Ġdirection : ĠSlide Direction ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġv Ġ= ĠviewHolder . view ĊĠĠĠĠĠĠĠ Ġon BindView ( v , Ġdirection ) ĊĠĠĠĠĠĠĠ Ġif Ġ( v Ġis ĠSl id able UI ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġv . start Visible ( direction ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfinal Ġoverride Ġfun Ġon View Dismiss ( view Holder : ĠSlide ViewHolder , Ġparent : ĠViewGroup , Ġdirection : ĠSlide Direction ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġv Ġ= ĠviewHolder . view ĊĠĠĠĠĠĠĠ Ġif Ġ( v Ġis ĠSl id able UI ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġv . invisible ( direction ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġon View Dismiss ( v , Ġparent , Ġdirection ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfinal Ġoverride Ġfun Ġon View Complete ( view Holder : ĠSlide ViewHolder , Ġdirection : ĠSlide Direction ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġv Ġ= ĠviewHolder . view ĊĠĠĠĠĠĠĠ Ġon View Complete ( v , Ġdirection ) ĊĠĠĠĠĠĠĠ Ġif Ġ( v Ġis ĠSl id able UI ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġv . complete Visible ( direction ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfinal Ġoverride Ġfun Ġfinish Slide ( dismiss ViewHolder : ĠSlide ViewHolder , Ġvisible ViewHolder : ĠSlide ViewHolder , Ġdirection : ĠSlide Direction ) Ġ{ ĊĠĠĠĠĠĠĠ Ġfinish Slide ( direction ) ĊĠĠĠĠĠĠĠ Ġfinish Slide ( dismiss ViewHolder . view , Ġvisible ViewHolder . view , Ġdirection ) ĊĠĠĠĠĠĠĠ Ġif Ġ( dismiss ViewHolder . view Ġis ĠSl id able UI ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdismiss ViewHolder . view . preload ( direction ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }