Android Paint和Canvas常用方法总结(自用,仅供参考)

本文介绍了在Android中使用Paint画笔进行图形绘制的方法,包括设置线条样式、颜色、宽度、抗锯齿等属性,以及使用Canvas画布进行画线、画矩形、画圆和绘制扇形的操作。同时,提到了如何计算旋转角度对应点的坐标来实现动态图形效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、Paint画笔

新建对象
Paint linePaint=new Paint();
  1. 设置样式(填充或线条)
linePaint.setStyle(Paint.Style.FILL_AND_STROKE);
  1. 设置颜色
linePaint.setColor(Color.RED);
  1. 绘制线条宽度
linePaint.setStrokeWidth(4);
  1. 设置线条链接处样式
linePaint.setStrokeJoin(Paint.Join.ROUND);
  1. 设置线头模式
linePaint.setStrokeCap(Paint.Cap.ROUND);
  1. 开启抗锯齿功能
linePaint.setAntiAlias(true);
  1. 绘制虚线
PathEffect effects = new DashPathEffect(new float[]{5, 10}, 0);
linePaint.setPathEffect(effects);
  1. 绘制渐变带阴影图形
int[] mColors = {Color.parseColor("#FF9800"),Color.parseColor("#FFCE85"),Color.parseColor("#FFEBCF")};
LinearGradient linearGradient=new LinearGradient(50, 0, 50, heightSize, mColors, null, Shader.TileMode.MIRROR);
linePaint.setShader(linearGradient);

二、Canvas画布

  1. 画线
canvas.drawLine(startX,startY,endX, endY,linePaint);
  1. 画方
canvas.drawRect(left,top,right,bottom,linePaint);
  1. 画圆
canvas.drawCircle(cX,cY,redius,linePaint);
  1. 绘制扇形
canvas.drawArc(left,top,right,bottom,startAngle,weepAngle,useCenter,Paint paint);

三、附

  1. 求旋转角度值对应的点坐标(sin与cos求值)
float lineStartX = CENTER_X + RADIUS * (float) Math.cos(lineAngle / 180 * Math.PI);
float lineStartY = CENTER_Y + RADIUS * (float) Math.sin(lineAngle / 180 * Math.PI);
float lineEndX = CENTER_X + (RADIUS + 20) * (float) Math.cos(lineAngle / 180 * Math.PI);
float lineEndY = CENTER_Y + (RADIUS + 20) * (float) Math.sin(lineAngle / 180 * Math.PI);

未完待续

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

绝命三郎

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值