canvas 的使用

这是一个画板的意思 要配合paint (画笔)一起使用

首先创建出来画笔

paint.setStyle(Paint.Style.STROKE);   设置样式代表的是空心的  只有轮廓

paint.setStyle(Paint.Style.FILL); 设置样式代表的实心的,里面是有颜色的

mpaint.setAntiAlias(true); 支持抗锯齿

mpaint.setStrokeWidth(3);   设置的是线条的粗细

canvas 的具体使用

画圆 :

canvas .drawCircle(width/2,width/2,width/2-5,mpaint); 第一个是X轴的坐标,第二个是Y轴的坐标,第三个是半径 第四个是画笔

画扇形

在画扇形之前首先先创建一个类 RectF 来确定要画的区域

RectF rectF = new RectF(0,0,width,width);

canvas.drawArc(扇形的区域,开始角度,角度,是否显示圆心,画笔)

设置字到扇形

mpaint.setTextSize(24);设置画笔的字体大小

先创建一个path 

Path path =new Path();

给path 添加属性

path.addArc(位置,开始的角度,每组字占的角度);

写字

canvas.drawTextOnPath(所要写的字,path,50,50,画笔);

在Canvas 中添加点击事件

1.先实现点击监听方法

2.在方法中实现就好了

点击旋转随机数

Random random =new Random();

//        获取旋转的随机数

        int dul = random.nextInt(1000);

//        第一个开始的角度 ,第二个 结束的角度,

        RotateAnimation rotateAnimation =new RotateAnimation(startjd,dul+360,width/2,width/2);

rotateAnimation.setDuration(1000);

rotateAnimation.setFillAfter(true);

startAnimation(rotateAnimation);

//        动画结束后保存结束的位置,在下次的时候就不回到原来的位置

        startjd =dul%360;

//        Toast.makeText(mcontext,"点击了一下",Toast.LENGTH_SHORT).show();

你可能感兴趣的:(canvas 的使用)