【安卓学习之UI学习】 自定义 弧形等级进度条

█ 【安卓学习之UI学习】 自定义 弧形等级进度条

█ 相关文章:

- 
 ● 【android学习开源项目之BasePopup】BasePopup(PopupWindow)进行二次封装
 ● 【android学习开源项目之AndroidAutoSize】AndroidAutoSize和DialogFragment的适配
 ● 【安卓学习之UI学习】 自定义组合控件View 的开发
 ● 【安卓学习之UI学习】 自定义 弧形等级进度条

█ 读前说明:

- 
 ● 本文通过学习别人写demo,学习一些课件,参考一些博客,’学习相关知识,如果涉及侵权请告知
 ● 本文只简单罗列相关的代码实现过程
 ● 涉及到的逻辑以及说明也只是简单介绍,主要当做笔记,了解过程而已  
 ● demo下载传送门

█ 我的问题

● 自定义 弧形等级进度条:
在这里插入图片描述

█ 解决方案:

● 方法一,使用图表来绘制

MPAndroidChart
hellocharts-android

● 方法二,自定义view:贝塞尔曲线实现
如:刷礼物;水滴动画;翻书效果;天气预报曲线图等;

// 移动到操作起始点坐标,不会进行绘制,只用于移动移动画笔
mPath.moveTo     
// 从一个点连线到另一个点,用于进行直线绘制
mPath.lineTo        
// 生成二次贝塞尔曲线,(x1,y1) 为控制点,(x2,y2)为结束点
mPath.quadTo(x1, y1, x2, y2)    
// 生成三次贝塞尔曲线, (x1,y1) 为控制点,(x2,y2)为控制点,(x3,y3) 为结束点;即与二阶区别多一个控制点   
mPath.cubicTo(x1, y1, x2, y2, x3, y3)       

● 方法三,自定义view:画圆、画弧的方式实现

 canvas.drawArc(mRectF, (unProgressAngle + mStartAngle), mSweepAngle * arcRatio, false, mArcPaint);

● 待增加 ● ● ● ● ● ●

█ 最后:

● 最后使用第三种方案,实现效果图如下:
在这里插入图片描述
 ● 最后的最后,注意实现过程中,黑暗模式/深色模式下的 适配。

█ 相关资料:

-
 ● 1.2018-05-10 Android自定义View全解 - 銀灬楓 - 简书
 ● 2.2018-03-27 GridLayout 使用总结 - 草帽团长 -
简书

 ● 3.2019-07-04 网格布局(GridLayout) - 不靠谱的老肖 -简书

转载请注明出处:

https://blog.csdn.net/ljb568838953/article/details/109645413

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值