Android Custom View — Circular(環形條)
這次是實作一個簡單的環形條,下圖這樣的,還是盡量簡單的寫,讓新手能夠看懂
這一次沒多少代碼,就貼一下核心部分,别的大家可以自己看源碼
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
if(f){
arc1+=;
arc2+=;
}else{
arc1+=;
arc2+=;
}
if(arc1>) {
temparc = arc1 % ;
arc2 = temparc + arc2 - arc1;
arc1 = temparc;
}
if(arc1-arc2<=)f=true;
else if(arc1-arc2>=)f=false;
canvas.drawArc(r, arc2, arc1-arc2, false, circle);
invalidate();
}
解釋一下,代碼裡arc1和arc2分别是圓弧的首末角度,f=true時環形長度縮小,false時長度增加,每次繪制後即調用invalidate()立即進行下一次繪制,實作圓環不斷旋轉的效果