android 自定义三角形按钮,安卓自定义view画图:三角形,圆形,方形,扇形,弧线

博客展示了Android中绘制多种图形的代码,包括矩形、圆形、三角形、扇形和圆弧。通过不同的函数实现各图形的绘制,如drawRect画矩形、drawCircle画圆形等,还给出了完整源代码。

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

效果图

4541fcc0109a

主要代码

/**

* 画矩形

*/

private fun drawRect(canvas: Canvas, isFilled: Boolean = true) {

setPaintStyle(isFilled)

canvas.drawRect(0f, 0f, width.toFloat(), height.toFloat(), paint)

}

/**

* 画圆形

*/

private fun drawCircle(canvas: Canvas, isFilled: Boolean = true) {

setPaintStyle(isFilled)

canvas.drawCircle(

width.toFloat() / 2,

height.toFloat() / 2,

min(width, height).toFloat() / 2,

paint

)

}

/**

* 画三角形

*/

private fun drawTriangle(canvas: Canvas, isFilled: Boolean = true) {

setPaintStyle(isFilled)

path.moveTo(width.toFloat() / 2, 0f)

path.lineTo(width.toFloat(), height.toFloat())

path.lineTo(0f, height.toFloat())

path.close()

canvas.drawPath(path, paint)

}

/**

* 画扇形

*/

private fun drawSector(canvas: Canvas, isFilled: Boolean = true) {

setPaintStyle(isFilled)

val rectF = RectF(0f, 0f, width.toFloat(), height.toFloat())

canvas.drawArc(rectF, 30f, 120f, true, paint)

}

/**

* 画圆弧

*/

private fun drawArc(canvas: Canvas) {

setPaintStyle(false)

val rectF = RectF(0f, 0f, width.toFloat() - strokeWidth, height.toFloat() - strokeWidth)

canvas.drawArc(rectF, 30f, 120f, false, paint)

}

完整源代码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值