package Ġcom . example . permission _ helper . ui . demo _ recycler _ view . item _ decoration Ċ Ċ import Ġandroid . graphics . Rect Ċ import Ġandroid . view . View Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . example . permission _ helper . ui . demo _ recycler _ view . RecyclerView Adapter Normal Ċ Ċ class ĠMargin Item Offsets ( private Ġval Ġextra Margin : ĠInt ) Ġ: ĠRecyclerView . Item Decoration () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Offsets ( ĊĠĠĠĠĠĠĠ Ġout Rect : ĠRect , ĊĠĠĠĠĠĠĠ Ġview : ĠView , ĊĠĠĠĠĠĠĠ Ġparent : ĠRecyclerView , ĊĠĠĠĠĠĠĠ Ġstate : ĠRecyclerView . State ĊĠĠĠ Ġ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval Ġposition Ġ= Ġparent . getChild Adapter Position ( view ) ĊĠĠĠĠĠĠĠ Ġif Ġ( position Ġ+ Ġ 1 Ġ== Ġparent . adapter !!. item Count ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġout Rect . bottom Ġ= Ġextra Margin Ġ// Ġunit Ġis Ġpx ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġif Ġ( position Ġ% Ġ 2 Ġ== Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġout Rect . right Ġ= Ġextra Margin ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġout Rect . left Ġ= Ġextra Margin ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġadapter Ġ= Ġparent . adapter Ġas ĠRecyclerView Adapter Normal ? ĊĠĠĠĠĠĠĠ Ġval Ġitem Ġ= Ġadapter !!. getItem ( position ) ĊĠĠĠĠĠĠĠ Ġif Ġ( item . first Item In Section ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġout Rect . top Ġ= Ġextra Margin ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ