package com.example.annulusdemo;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.util.AttributeSet;
import android.view.View;
public class AnnulusView extends View {
private int radius;// 半径
private int widths;// 圆环宽度
private String colors = "#ff0000";
private Paint mPaint;// 画笔
public int getRadius() {
return radius;
}
public void setRadius(int radius) {
this.radius = radius;
}
public int getWidths() {
return widths;
}
public void setWidths(int widths) {
this.widths = widths;
}
public String getColors() {
return colors;
}
public void setColors(String colors) {
this.colors = colors;
}
public AnnulusView(Context context) {
this(context, null);
}
public AnnulusView(Context context, AttributeSet attrs) {
super(context, attrs);
// 抗锯齿
mPaint = new Paint(Paint.ANTI_ALIAS_FLAG);
//设置圆环
mPaint.setStyle(Paint.Style.STROKE);
}
@Override
protected void onDraw(Canvas canvas) {
//设置空心线宽
mPaint.setStrokeWidth(1);
//设置内圆
canvas.drawCircle(300, 300, radius, mPaint);
//设置圆环
mPaint.setStrokeWidth(widths);
mPaint.setColor(Color.parseColor(colors));
canvas.drawCircle(300, 300, radius + 1 + widths / 2, mPaint);
//设置外圆
mPaint.setStrokeWidth(2);
canvas.drawCircle(300, 300, radius + widths, mPaint);
super.onDraw(canvas);
}
}
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.util.AttributeSet;
import android.view.View;
public class AnnulusView extends View {
private int radius;// 半径
private int widths;// 圆环宽度
private String colors = "#ff0000";
private Paint mPaint;// 画笔
public int getRadius() {
return radius;
}
public void setRadius(int radius) {
this.radius = radius;
}
public int getWidths() {
return widths;
}
public void setWidths(int widths) {
this.widths = widths;
}
public String getColors() {
return colors;
}
public void setColors(String colors) {
this.colors = colors;
}
public AnnulusView(Context context) {
this(context, null);
}
public AnnulusView(Context context, AttributeSet attrs) {
super(context, attrs);
// 抗锯齿
mPaint = new Paint(Paint.ANTI_ALIAS_FLAG);
//设置圆环
mPaint.setStyle(Paint.Style.STROKE);
}
@Override
protected void onDraw(Canvas canvas) {
//设置空心线宽
mPaint.setStrokeWidth(1);
//设置内圆
canvas.drawCircle(300, 300, radius, mPaint);
//设置圆环
mPaint.setStrokeWidth(widths);
mPaint.setColor(Color.parseColor(colors));
canvas.drawCircle(300, 300, radius + 1 + widths / 2, mPaint);
//设置外圆
mPaint.setStrokeWidth(2);
canvas.drawCircle(300, 300, radius + widths, mPaint);
super.onDraw(canvas);
}
}