这是一个画板的意思 要配合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();
网友评论