1. 分别绘制左黑右白两个半圆, 半径为r
2. 再绘制上黑下白两个较小的圆, 半径为1/4 r
3. 最后绘制上白下黑两个最小的圆, 半径为 1/16 r
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
int w = Math.min(getWidth(), getHeight());
canvas.rotate(mDegrees, w / 2, w / 2);
mPaint = new Paint();
mPaint.setColor(Color.BLACK);
canvas.drawCircle(w / 2, w / 2, w / 2 + 5, mPaint);
canvas.drawArc(new RectF(0, 0, w, w), 90, 180, true, mPaint);
mPaint.setColor(Color.WHITE);
canvas.drawArc(new RectF(0, 0, w, w), 270, 180, true, mPaint);
mPaint.setColor(Color.BLACK);
canvas.drawCircle(w / 2, w / 4, w / 4, mPaint);
mPaint.setColor(Color.WHITE);
canvas.drawCircle(w / 2, w / 4 * 3, w / 4, mPaint);
canvas.drawCircle(w / 2, w / 4, w / 16, mPaint);
mPaint.setColor(Color.BLACK);
canvas.drawCircle(w / 2, w / 4 * 3, w / 16, mPaint);
}
我的自定义View项目地址: https://github.com/aa86799/MyCustomView (欢迎start&fork)
本文地址:https://github.com/aa86799/MyCustomView/tree/master/taichi