package Ġcn . big orange . wheel . utils Ċ Ċ import Ġandroid . graphics . Rect Ċ import Ġandroid . view . View Ċ import Ġandroidx . recyclerview . widget . Linear LayoutManager Ċ import Ġandroidx . recyclerview . widget . RecyclerView ĊĊ Ċ /** Ċ Ġ* Ġ æĸĩ Ġ ä»¶ Ġ åĲį : ĠSpace Item Decoration Ċ Ġ* Ġ åĪĽ Ġ å»º Ġ äºº : Ġs ine om Ċ Ġ* ĠåĪĽå»º æĹ¥æľŁ : Ġ 2 0 1 9 - 1 0 - 2 8 Ġ 1 9 : 3 0 Ċ Ġ* Ġä¿®æĶ¹ æĹ¶éĹ´ ï¼ļ Ċ Ġ* Ġä¿®æĶ¹ å¤ĩ æ³¨ ï¼ļ Ċ Ġ* Ġ@ author Ġch it ian Ċ Ġ*/ Ċ class ĠSpace Item Decoration ( ĊĠĠĠ Ġprivate Ġval Ġleft Right : ĠInt , ĊĠĠĠ Ġprivate Ġval Ġtop Bottom : ĠInt Ċ ) Ġ: ĊĠĠĠ ĠRecyclerView . Item Decoration () Ġ{ ĊĠĠĠ Ġoverride Ġfun ĠgetItem Offsets ( ĊĠĠĠĠĠĠĠ Ġout Rect : ĠRect , ĊĠĠĠĠĠĠĠ Ġview : ĠView , ĊĠĠĠĠĠĠĠ Ġparent : ĠRecyclerView , ĊĠĠĠĠĠĠĠ Ġstate : ĠRecyclerView . State ĊĠĠĠ Ġ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval Ġlayout Manager Ġ= Ġget Linear LayoutManager ( parent ) ĊĠĠĠĠĠĠĠ Ġ// ç« ĸ çĽ´ æĸ¹åĲĳ çļĦ ĊĠĠĠĠĠĠĠ Ġif Ġ( layout Manager . orientation Ġ== ĠLinearLayoutManager . VERTICAL ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// æľĢåĲİ ä¸Ģ é¡¹ éľĢè¦ģ Ġbottom ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( parent . getChild Adapter Position ( view ) Ġ== Ġlayout Manager . item Count Ġ- Ġ 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġout Rect . bottom Ġ= Ġtop Bottom ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġout Rect . top Ġ= Ġtop Bottom ĊĠĠĠĠĠĠĠĠĠĠĠ Ġout Rect . left Ġ= Ġleft Right ĊĠĠĠĠĠĠĠĠĠĠĠ Ġout Rect . right Ġ= Ġleft Right ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// æľĢåĲİ ä¸Ģ é¡¹ éľĢè¦ģ right ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( parent . getChild Adapter Position ( view ) Ġ== Ġlayout Manager . item Count Ġ- Ġ 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġout Rect . right Ġ= Ġleft Right ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġout Rect . top Ġ= Ġtop Bottom ĊĠĠĠĠĠĠĠĠĠĠĠ Ġout Rect . left Ġ= Ġleft Right ĊĠĠĠĠĠĠĠĠĠĠĠ Ġout Rect . bottom Ġ= Ġtop Bottom ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġget Linear LayoutManager ( parent : ĠRecyclerView ): ĠLinearLayoutManager Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( parent . layout Manager Ġis ĠLinearLayoutManager ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġparent . layout Manager Ġas ĠLinearLayoutManager ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthrow Ġjava . lang . IllegalStateException ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Space Item Decoration Ġcan Ġonly Ġbe Ġused Ġwith Ġa ĠLinearLayoutManager ." ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ }