我是第一次打自定义view相关代码,说错了大家请多多包涵
首先前导知识是自定义view创建时候要重写的方法onMeasure确定相当于父容器当前自定义view的位置
onDraw 用Canvas、曲线、直线来画出自定义view,tips:其他地方通过invaliate再调用onDraw
onSizeChanged 用来定义View大小
首先放一下效果
第一步做的肯定是初始化画笔以及Canvas对象,在java中大家应该实践了很多
private Canvas mCanvas;//整个view画布
private Paint mTextPaint;//画出表盘上的数字画笔
private Rect mTextRect = new Rect();//测量表盘上文本宽高的矩形
private Paint mCirclePaint;//画出小时圆圈画笔
private float mCircleStrokeWidth=4;//时钟圆圈的线条宽度
private RectF mCircleRectF = new RectF();
private int mLightColor;//亮颜色,用于分钟
private int mDarkColor;//暗颜色,用于时针等等
private int mBackgroundColor;//背景颜色
/* 小时文本字体大小 */
private float mTextSize;
/* 时钟半径