1. 程式人生 > >初識Android自定義View----畫一個圓

初識Android自定義View----畫一個圓

新建一個CircleView類

public class CircleView extends View {

    private Paint mPaint;
    private Resources resources = getResources();

    //在java程式碼中配置View時呼叫此構造方法
    public CircleView(Context context) {
        super(context);
        init();
    }
    
    //在xml中配置View時呼叫此構造方法
    public CircleView(Context context,
AttributeSet attrs){ super(context, attrs); init(); } public void init() { //初始化畫筆 mPaint = new Paint(); //設定畫筆顏色 mPaint.setColor(resources.getColor(R.color.circleColor)); //設定畫筆寬度 mPaint.setStrokeWidth(5f); //設定畫筆模式為填充 mPaint.
setStyle(Paint.Style.FILL); } @Override public void onDraw(Canvas canvasc){ super.onDraw(canvasc); //獲取控制元件的寬高 int width = getWidth(); int height = getHeight(); //設定圓的半徑為寬高最小值的二分之一 int r = Math.min(width,height)/2; //呼叫Canvasc.drawCircle畫圓,引數設定圓心x座標,y座標,半徑,畫筆
canvasc.drawCircle(width/2,height/2,r,mPaint); } }

在xml檔案中像平時新增button控制元件一樣新增自己新建的View 但是格式有一定規範, (包名.CircleView)

<com.example.shaobo.myapplication.CircleView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>

yunx 執行成功 第一個自定義View完成啦