Android 自定义控件圆形图案

自定义控件圆形图案

主要是利用Paint和Canvas,个人觉得这个demo没有什么需要讲解的,直接看代码就行。下面是代码。
布局代码activity_main.xml




    



MainActivity
package f3.nsu.com.drawcircle;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

/**
 * 利用画布画圆
 */
public class MainActivity extends AppCompatActivity {

    private Circle myCircle;        //Circle自定义控件
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //绑定控件
        myCircle  = (Circle) findViewById(R.id.myCircle);
    }
}
Circle.java
package f3.nsu.com.drawcircle;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.support.annotation.Nullable;
import android.util.AttributeSet;
import android.view.View;

/**
 * Created by zhy on 2017/7/8.
 * 画圆
 * 自定义控件
 */
public class Circle extends View {
    //预定一个颜色
    private int color1 = Color.parseColor("#ff0000");

    public Circle(Context context, @Nullable AttributeSet attrs) {
        super(context, attrs);
    }

    protected void onDraw(Canvas canvas){
        Paint p = new Paint();      //创建一个画笔
        p.setColor(color1);     // 设置颜色
        p.setAntiAlias(true);       // 设置画笔的锯齿效果。 true是去除
        canvas.drawCircle(20, 20, 16, p);
    }
}

其实代码很简单,重点的就是Circle中的onDraw方法中画笔和画布的使用。

你可能感兴趣的:(android)