自定義控制項 自定義鐘錶

2021-10-23 21:44:59 字數 2057 閱讀 8937

private context mcontext;

/** * 畫筆

*/private paint mpaint;

/** * 控制項的寬

*/private int mwidth;

/** * x方向的圓心座標

*/private int center;

/** * 鐘錶的半徑

*/private int mradio;

/** * 圓環的寬

*/private int strokewidth = 8;

/** * 當前小時

*/private int mcurrenthour;

/** * 當前分鐘

*/private int mcurrentminute;

/** * 當前秒

*/private int mcurrentsecond;

/** * 時針的長度

*/private int hourlinelen;

/** * 分針的長度

*/private int minutelinelen;

/** * 秒針的長度

*/private int secondlinelen;

/** * 時針掃過的角度

*/private int hourdegree;

/** * 分針掃過的角度

*/private int minutedegree;

/** * 秒針掃過的角度

*/private int seconddegree;

/** * 時針,分針,秒針的終點座標

*/private int hourendx;

private int hourendy;

private int minuteendx;

private int minuteendy;

private int secondendx;

private int secondendy;

private int mheight;

private string tag="clockview";

public clockview(context context)

public clockview(context context, @nullable attributeset attrs)

public clockview(context context, @nullable attributeset attrs, int defstyleattr)

};timer.schedule(task, 1000, 1000);

}}).start();

}@override

protected void onsizechanged(int w, int h, int oldw, int oldh) else

super.onsizechanged(w, h, oldw, oldh);

}@override

protected void ondraw(canvas canvas) else

// 旋轉畫布

canvas.rotate(6, center, center);

}// 畫數字

for (int i = 0; i < 12; i++)

// 獲取當前時間

initcurrenttime();

// 畫秒針

canvas.drawline(center, center, secondendx, secondendy, mpaint);

// 畫分針

canvas.drawline(center, center, minuteendx, minuteendy, mpaint);

// 畫時針

mpaint.setstrokewidth(15);

canvas.drawline(center, center, hourendx, hourendy, mpaint);

}/**

* 初始化當前時間,計算時針分針的終點座標

*/private void initcurrenttime()

自定義View 鐘錶

通過自定義 view 來實現乙個鐘錶 img 分析 重寫 ondraw 畫外圓 畫外圓和中心實心圓 param canvas private void drawcircle canvas canvas 畫刻度 畫刻度 param canvas private void drawscale canva...

自定義控制項及自定義屬性

自定義控制項在android開發中的重要性,是不言而喻,眾人皆知的。希望通過這二天的學習,能讓大家了解自定義控制項的原理,熟悉自定義控制項的使用步驟,並能寫出一些普通的效果。內容介紹 1 使用系統控制項,實現自定義的效果,案例有 優酷環形選單 廣告條 viewpager 下拉列表 spinner 2...

Android自定義控制項 自定義屬性

自定義屬性的過程 1.在res values資料夾中建立attrs的xml檔案。2.寫入標籤,定義子標籤attr,放入自定義屬性的名稱。format 可以用 來同時使用 1 reference 參考某一資源id 2 color 顏色值 3 boolean 布林值 4 dimension 尺寸值 帶有...