前言:最近一直在學(xué)自定義View的相關(guān)知識,感覺這在Android中還是挺難的一塊,當(dāng)然這也是每個(gè)程序員必經(jīng)之路,正好公司項(xiàng)目要求實(shí)現(xiàn)類似儀表盤的效果用于直觀的顯示公司數(shù)據(jù),于是就簡單的寫了個(gè)demo,記錄實(shí)現(xiàn)的過程。上篇《Android自定義View實(shí)現(xiàn)圓弧進(jìn)度效果》簡單記錄了圓弧及文字的繪制,漸變色的儀表盤效果將更加升入的介紹canvas及paint的使用(如畫布旋轉(zhuǎn),paint的漸變色設(shè)置等)。
知識梳理
1.圓弧漸變色(SweepGradient)
2.圓弧上刻度繪制
3.指針指示當(dāng)前數(shù)據(jù)位置(Bitmap)
4.數(shù)據(jù)文本跟隨弧度顯示(drawTextOnPath)
效果圖:
1.繼承自View
(1)重寫構(gòu)造方法,初始化Paint
public DashBoardView(Context context) { this(context, null); } public DashBoardView(Context context, AttributeSet attrs) { this(context, attrs, 0); } public DashBoardView(Context context, AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); init(); }