RecyclerView自定義分割線

2021-10-01 03:51:36 字數 2858 閱讀 2084

水平排列分割線

垂直排列分割線

是否最後一條顯示分割線

設定分割線寬(高)度

設定左右間距

設定左間距

設定右間距

通過資源id設定左間距

設定顏色

/**

* 是否最後一條顯示分割線

* @param show

* @return

*/public builder setmshowlastline

(boolean show)

/** * 設定分割線寬(高)度

* @param pixels

* @return

*/public builder setspan

(float pixels)

/** * 設定分割線寬(高)度

* @param resource

* @return

*/public builder setspan

(@dimenres

int resource)

/** * 設定左右間距

* @param pixels

* @return

*/public builder setpadding

(float pixels)

/** * 設定左右間距

* @param resource

* @return

*/public builder setpadding

(@dimenres

int resource)

/** * 設定左間距

* @param pixelpadding

* @return

*/public builder setleftpadding

(float pixelpadding)

/** * 設定右間距

* @param pixelpadding

* @return

*/public builder setrightpadding

(float pixelpadding)

/** * 通過資源id設定左間距

* @param resource

* @return

*/public builder setleftpadding

(@dimenres

int resource)

/** * 通過資源id設定左間距

* @param resource

* @return

*/public builder setrightpadding

(@dimenres

int resource)

/** * 通過資源id設定顏色

* @param resource

* @return

*/@suppresslint

("resourcetype"

)public builder setcolorresource

(@colorres

int resource)

/** * 設定顏色

* @param color

* @return

*/public builder setcolor

(@colorres

int color)

/**

* 畫水平排列分割線

* @param c

* @param parent

*/private

void

drawhorizontal

(canvas c, recyclerview parent)}}

/** * 畫垂直排列分割線

* @param c

* @param parent

*/private

void

drawvertical

(canvas c, recyclerview parent)

else

}}

/**

* item是否是垂直排列

* @param parent

* @return

*/private

boolean

isvertical

(recyclerview parent)

return

false;}

@override

public

void

ondraw

(@nonnull canvas c,

@nonnull recyclerview parent,

@nonnull recyclerview.state state)

else

}

linearitemdecoration linearitemdecoration =

newlinearitemdecoration.builder

(mcontext)

.setspan(1f

).setcolorresource

(r.color.gray_selector)

.setmshowlastline

(true).

build()

;

recyclerview.

additemdecoration

(linearitemdecoration)

;

完整**:

RecyclerView詳解 自定義動畫

如果覺得自定義比較繁瑣,github上也有相關的動畫實現 接下來我們將一步步分析這個實現類,最後在它的基礎上修改預設的動畫效果。先來看defaultitemanimator中的幾個重要的方法 void runpendinganimations 當有動畫需要執行時呼叫。boolean isrunnin...

RecyclerView詳解 自定義動畫

google為我們提供了乙個預設的動畫實現 defaultitemanimator 當資料新增 刪除 更新時,會觸發預設的動畫效果 通過本篇的學習,我們可以得到下面的效果 如果覺得自定義比較繁瑣,github上也有相關的動畫實現 接下來我們將一步步分析這個實現類,最後在它的基礎上修改預設的動畫效果。...

RecyclerView自定義進入動畫

定義布局動畫的xml檔案 recycler animation.xml android delay 15 表示延遲時間的百分數,乙個乙個的動畫 android animationorder normal 表示進入的動畫順序,normal 按順序,reverse 反向順序 random 隨機順序 xm...